从ASP.NET 4 web.config </assemblies> </compilation>中的<compilation> <assemblies>中删除所有程序集

时间:2010-06-03 15:12:37

标签: asp.net

  

可能重复:
  What is the purpose of the Assemblies node in Web.Config?

我删除了编译/程序集元素中的所有'add'元素。

所以最初在我的应用程序的根web.config文件中:

<compilation debug="true" targetFramework="4.0">
  <assemblies>
    <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Web.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
  </assemblies>
</compilation>

现在看起来像:

<compilation debug="true" targetFramework="4.0">
  <assemblies>
  </assemblies>
</compilation>

我的申请仍然有效。项目文件仍然包含我删除的所有引用,但在编译期间(visual studio内部),此部分似乎未被使用。

发生了什么事?

1 个答案:

答案 0 :(得分:9)

应用程序此部分中的引用用于动态执行的自动ASP.NET编译。如果您正在部署已编译的站点(没有.cs或.vb文件),那么您可以将其删除。