none
aspx母版页内使用asp.net AJAX Control Toolkit中的ToolkitScriptManager,页面进行预编译后(不选对页面进行更新),页面AJAX功能失效! RRS feed

  • 问题

  • aspx母版页内使用asp.net AJAX Control Toolkit中的ToolkitScriptManager,页面进行预编译后(不选对页面进行更新),页面AJAX功能失效!

    原本应该显示的AJAX控件,比如Editor,不会显示!

    我用的是UPDATE3,但我做过测试UPDATE2也是有这样的问题!但我把这些UPDATE都卸载后,只留原版(没有UPDATE的版本),用以上说的方法预编译就正常!但奇怪的是,在UPDATE3、UPDATE2中把ToolkitScriptManager改换成自带的ScriptManager进行预编译后(不选对页面进行更新)就是正常的!

    这里要提一下,预编译时有一个选项:不选对页面进行更新,这个选上时,UPDATE后的VS预编译asp.net(母版页内使用asp.net AJAX Control Toolkit中的ToolkitScriptManager)一切正常,选上时,预编译后页面AJAX就会失效,有些控件显示也不正常(如Editor)!没有UPDATE的VS就不会有这样的问题!呵呵~~不知道是怎么一回事

    2013年8月29日 14:12

全部回复

  • 你好,

    预编译后页面AJAX效,是因为ToolkitScriptManager内的js文件没有动态加载成功或使用了旧版本的js文件。最好在会错误信息工具栏查看错误,提供错误信息以便于我们更好的帮助你处理这问题。

    预编译选项
      在首次启动应用程序的时候,ASP.NET会动态地分析和编译所有的ASP.NET文件(aspx页面)。运行环境要对编译的结果进行缓冲,以便更好地服务未来所有的请求。
      在服务器重启或者Web服务器重启之后,第一次启动应用程序也意味着这一过程要重新开始。而且,对应用程序任何文件的改变都会被系统检测到,而在文件发生改变之后首次运行应用程序也会让这一过程再次发生。而预编译通过(预先)编译应用程序避免了这种延迟

          预编译另外一个好处是能够捕捉在应用程序启动阶段发生的任何错误。错误会显示在工具里,但是不会终止编译过程。      

    隐藏源代码
        预编译的另外一个副产品是能够隐藏任何或者所有的应用程序源代码。这意味着其他的开发人员需要利用反编译程序或者ilasm才能够取得您的代码。这就行了——预编译让您能够以二进制文件的形式分发应用程序。
      目标目录里没有源代码。App_Code文件夹里的所有类都被编译成一个或者多个二进制文件,放到bin目录下;目标目录下不会有源代码文件(.cs.vb.js等等)。此外,所有的主页面文件也会被编译到bin目录下,作为隐藏文件。ASPXASCXASHX文件的所有代码和标记,以及相关的代码隐藏文件都被放在bin目录下的一个或者多个程序集里。
      隐藏源代码是毁誉参半。其他的开发人员无法以任何形式查看或者更改应用程序——即使是Web页面标记也不行。而另外一方面,对应用程序的任何改变(不论大小)都要求改变原始的源代码、重新编译和重新部署。这可能是一个十分耗时的过程,所以并不一定适用于所有的应用程序。
      可更新命令参数(u)让您能够取代这个默认的行为。使用这个参数意味着所有的标记文件(ASPXASCX等等)都要包括在预编译过程的输出里。一旦应用程序被部署,这些文件仍然能够用于编辑和更新。在应用程序被应用之后,小的布局问题可以通过源文件来处理,所以这是一个非常理想的参数

    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    2013年9月2日 9:35
    版主
  • 没有任何错误信息提示!察看HTML原码,其中,对js资源的引用都是好使的!资源引用的图标地址都能看到图标,但就是显示不到页面上!我QQ109518942加我!你说是资源未有加载上!但资源有加载上!就是不显示在页面上!但我是在模板页中使用的AJAX Control Toolskit!不知道是不是跟这个有关系!
    • 已编辑 WMS_MM 2013年11月14日 8:03
    2013年11月14日 8:01