小编Chr*_*ris的帖子

ASP.NET网站页面未反映最近的更改

我已经在一个新的内部网站上工作了几个星期,一切都按预期工作.如果我对我的.aspx页面进行了任何更改(添加了原始文本,新控件等),然后在VS(F5)中对它们进行了测试,则所有更改都会立即反映在浏览器中.任何简单的添加<br>标记或复杂的添加一组嵌套控件都会在调试重启时显示.

今天早些时候,一切正常.然后我决定想要玩一些AjaxControlToolkit好东西.我最终安装了今天发布的VS更新2(http://www.microsoft.com/en-us/download/details.aspx?id=38188),同时我还在更新NuGet并从那里安装AjaxControlToolkit.

我添加了一些工具,包括ScriptManager和UpdatePanel,一切都按预期工作.然后,我进行了一些更改,并意外添加了第二个ScriptManager.当我去调试/运行时,它当然失败了,因为你不能在一个页面上有多个,所以我删除了额外的一个并再次运行.它再次给出了同样的失败.我经历了并确保我不小心在某个地方添加了另一个,在我的项目中搜索了所有文件并且它是唯一的实例,所以我将其评论并再次运行.一样.我尝试了一些事情,最终重新启动IIS和VS,然后页面按预期运行.

从那时起,我在项目中的任何文件中所做的任何更改都不再更新,而不退出IIS并重新启动它.项目中新的,非常基本的aspx或html文件也做同样的事情.然后我在更新VS之前恢复到恢复点,并在我添加AjaxControlToolkit之前的前一天使用了我的站点的备份,但问题仍然存在.

这里发生了什么?我觉得它与VS更新有关,但这似乎没有意义.我看不出这样一个主要的错误被忽视了?为什么IIS不提供更新的页面?

浏览器中的Ctrl + F5不反映更改.重建整个解决方案并不反映变化.关闭和重新打开浏览器不会反映更改.更改我的web.config不会反映更改.创建一个全新的空网站,问题仍然存在.更改为Visual Studio开发服务器而不是IIS,问题仍然存在.

我发现强制正确,更新的页面正确服务的唯一方法是在IIS中"停止站点"然后重新启动,这对于检查页面中任何内容的微小更改来说简直太麻烦了.

我使用的是Visual Studio 2012 Express,IIS Express,.NET 4.0,C#代码隐藏,文件位于Intranet文件系统(映射到x :),与我的实际生产托管服务器分开.

为了以防万一(虽然我认为这不重要,因为即使有一个新的网站现在也出现问题)这里是我的web.config(这是非常基本的):

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0" />
    <customErrors mode="Off" />
    <httpRuntime />
    <pages>
      <controls>
        <add tagPrefix="ttw" src="~/Controls/CustomerInformation.ascx" tagName="CustInfo" />
        <add tagPrefix="ttw" src="~/Controls/CircuitInformation.ascx" tagName="CktInfo" />
      </controls>
    </pages>
  </system.web>
  <system.webServer>
    <httpProtocol>
      <customHeaders>
        <add name="X-UA-Compatible" value="IE=EmulateIE9" />
      </customHeaders>
    </httpProtocol>
  </system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)

任何建议将不胜感激,我希望解决方案将帮助其他可能在最近更新后遇到相同问题的人.

c# asp.net visual-studio-express asp.net-4.0 iis-express

6
推荐指数
1
解决办法
7581
查看次数