【问题标题】:Changes to razor view not showing剃刀视图的更改未显示
【发布时间】:2012-08-01 11:34:20
【问题描述】:
我对我的 ASP.NET MVC3 应用程序中的视图进行了一些更改,但是当我在浏览器中测试/调试站点时,我所做的更改没有显示出来。我所做的更改是对标记的简单文本修改。
我正在使用 Visual Studio 开发服务器来测试应用程序。
奇怪的是,我已经尝试将这些更改发布到 IIS,并且当我使用 IIS 服务器测试应用程序时,我对视图所做的更改正在发挥作用。
只有在 Visual Studio 环境中进行测试时才会出现这种情况。
谢谢,
【问题讨论】:
标签:
asp.net
asp.net-mvc-3
visual-studio-2010
razor
【解决方案1】:
我遇到的一个常见问题是,当您没有使用 IE 并且关闭了调试会话,但没有关闭浏览器时。
这意味着“IIS/开发服务器”仍在您的系统托盘中运行,但它在旧的编译代码上运行,如果您按 ctrl + shift + b,您将构建整个解决方案并重新发布您的代码到您的开发服务器。这允许您在浏览器中点击刷新 (F5),您对剃刀视图所做的更改现在应该会反映在浏览器中。
【解决方案2】:
你用的是 IE 吗?也许删除缓存或使用其他浏览器应该可以工作?我有很多问题:D
【解决方案3】:
解决方案是使用IIS Express。出于某种原因,VS 开发服务器无法识别后面代码的更改——这与浏览器上的缓存无关。
但是,其他答案中建议的源代码的位置很重要 - 它适用于我使用 c:\windows 文件夹或 c:\users\DefaultAppPool - 显然它与确保安全性有关。
在 IIS 下仅允许以“DefaultAppPool”身份运行的应用程序。因此,对于使用 VM 并映射主机操作系统代码文件夹的任何人,除非您复制到 c:\users\DefaultAppPool 文件夹中的本地文件夹,否则您将无法纠正此问题。
您现在可能还难以访问为 ASP.NET 下的成员资格提供程序建立的 SQL 服务器数据库。有关如何解决此问题的更多详细信息,请在我的博客上posted。