当前位置 : 主页 > 网络编程 > ASP >

asp.net – web.config中system.codedom中多个编译器定义的影响

来源:互联网 收集:自由互联 发布时间:2021-06-24
我的所有ASP.NET Web项目都是在VB.NET中专门开发的. (卫星DLL项目也是如此,这可能不太相关. 当我查看默认的web.config文件时,在 system.codedom下我始终发现C#和VB.NET都有编译器定义,如下图所示
我的所有ASP.NET Web项目都是在VB.NET中专门开发的. (卫星DLL项目也是如此,这可能不太相关.

当我查看默认的web.config文件时,在< system.codedom>下我始终发现C#和VB.NET都有编译器定义,如下图所示.

<compilers>
    <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
        <providerOption name="CompilerVersion" value="v3.5"/>
        <providerOption name="WarnAsError" value="false"/>
    </compiler>
    <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" compilerOptions="/optionstrict+">
        <providerOption name="CompilerVersion" value="v3.5"/>
        <providerOption name="OptionInfer" value="true"/>
        <providerOption name="WarnAsError" value="false"/>
    </compiler>
</compilers>

如果从此列表中删除C#编译器的定义,是否会有性能提升?或者它是一个延迟加载系统,其中永远不会加载不相关的编译器.或者也许我可能没想到的任何缺点?

我正在调整我的应用程序进行实时部署.

它很懒.编译器选项根据文件扩展名指定用于动态页面编译的编译器.如果文件没有该扩展名,则永远不会启动编译器.

如果您不使用这两种语言,则可以安全地将其删除.但是,如果您认为将来可能会使用混合语言开发,最好将其保留在那里,因为它没有任何害处.

网友评论