如何仅使用为新的 MVC3/Azure 项目保持干净的 ASP.NET web.config 文件?

发布于 2024-12-27 04:21:18 字数 1354 浏览 1 评论 0原文

我刚刚使用首先部署在 Windows Azure 上的 EF4 代码在 MVC3 中创建了一个新项目。 我想保持我的“web.config”文件尽可能干净,因为理解它包含的所有标签有点复杂。

我注意到有两个部分:

第一个部分适用于 IIS6,第二个部分适用于 IIS7+ 我不需要向后兼容,所以想删除第一个。

我将第一个部分的大部分转换为第二个部分,但我找不到如何转换这些部分:

<system.web>
  <authentication mode="None" />
  <compilation debug="true" targetFramework="4.0">
    <assemblies>
      <add assembly="System.Web.Helpers, Version=2.0.0.0, Culture=neutral />
      <add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral />
      <add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral />
      <add assembly="Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral />
    </assemblies>
  </compilation>
  <pages validateRequest="false">
    <namespaces>
      <add namespace="System.Web.Helpers" />
      <add namespace="System.Web.Mvc" />
      <add namespace="System.Web.Mvc.Ajax" />
      <add namespace="System.Web.Mvc.Html" />
      <add namespace="System.Web.Routing" />
      <add namespace="System.Web.WebPages" />
    </namespaces>
  </pages>
</system.web>

如何执行此操作,以便我可以删除已弃用的 ?

I just created a new project in MVC3 using EF4 code first deployed on Windows Azure.
I want to keep my "web.config" file as clean as possible because it's a little complicated to understand all tags it contains.

I notice two sections: <system.web> and <system.webServer>

The first is for IIS6 and the second for IIS7+
I do not need backward compatibility so want to delete the first.

I converted a good part of the first into the second, but I cannot find how to convert these sections:

<system.web>
  <authentication mode="None" />
  <compilation debug="true" targetFramework="4.0">
    <assemblies>
      <add assembly="System.Web.Helpers, Version=2.0.0.0, Culture=neutral />
      <add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral />
      <add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral />
      <add assembly="Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral />
    </assemblies>
  </compilation>
  <pages validateRequest="false">
    <namespaces>
      <add namespace="System.Web.Helpers" />
      <add namespace="System.Web.Mvc" />
      <add namespace="System.Web.Mvc.Ajax" />
      <add namespace="System.Web.Mvc.Html" />
      <add namespace="System.Web.Routing" />
      <add namespace="System.Web.WebPages" />
    </namespaces>
  </pages>
</system.web>

How to do this so that I can delete the deprecated <system.web>?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我为君王 2025-01-03 04:21:18

并非所有元素都被弃用。最重要的两个部分是 /system.web/httpHandlers(已移至 /system.webServer/handlers)和 /system.web/httpModules(现在为 /system.webServer/modules)。您不需要进一步修改上述配置,因为即使在 IIS7 中,其中的元素仍然是 system.web 元素的一部分。您是否尝试过在更改后运行您的网站?

Not all of the elements are deprecated. The two most important sections are /system.web/httpHandlers which has moved to /system.webServer/handlers and /system.web/httpModules which is now /system.webServer/modules. You shouldn't need to touch the above configuration any further as the elements within are still part of the system.web element even in IIS7. Have you tried running your site after your changes?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文