企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# /appconfig (C# Compiler Options) **/appconfig** 编译器选项使 C# 应用程序能够在程序集绑定时向公共语言运行时 (CLR) 指明程序集应用程序配置 (app.config) 文件的位置。 ## 语法 ``` /appconfig:file ``` ## 参数 _file_ 必选。包含程序集绑定设置的应用程序配置文件。 ## 备注 **/appconfig** 的一种用途是升级方案,在该方案中,程序集必须同时引用特定引用程序集的 .NET Framework 版本和 .NET Framework for Silverlight 版本。例如,以 Windows Presentation Foundation (WPF) 编写的 XAML 设计器可能必须同时引用设计器用户界面的 WPF 桌面和 Silverlight 附带的 WPF 子集。相同设计器程序集必须访问这两个程序集。默认情况下,单独引用会导致编译器错误,因为程序集绑定将这两个程序集视为等效。 **/appconfig** 编译器选项使您能够通过使用 **&lt;supportPortability&gt;** 标记指定禁用默认行为的 app.config 文件的位置,如下面的示例所示。 &lt;supportPortability PKT="7cec85d7bea7798e" enable="false"/&gt; 编译器将该文件的位置传递给 CLR 的程序集绑定逻辑。 | ![](https://box.kancloud.cn/2016-01-31_56adb62c1380a.jpg) 注意 | | :-- | | 如果您要使用 Microsoft Build Engine (MSBuild) 生成应用程序,可通过向 .csproj 文件添加属性标记来设置 **/appconfig** 编译器选项。若要使用已经设置在项目中 app.config 文件,添加属性标记 **&lt;UseAppConfigForCompiler&gt;** 到 .csproj 文件并设置其值到 **true**。若要指定一个不同的 app.config 文件,添加属性标记 **&lt;AppConfigForCompiler&gt;**并设置其值到文件的所在位置。 | 下面的示例演示一个 app.config 文件,它使应用程序可以具有对任何 .NET Framework 程序集的 .NET Framework 实现和 .NET Framework for Silverlight 实现的引用,该程序集存在于两个实现中。 **/appconfig** 编译器选项指定此 app.config 文件的位置。 ``` <configuration> <runtime> <assemblyBinding> <supportPortability PKT="7cec85d7bea7798e" enable="false"/> <supportPortability PKT="31bf3856ad364e35" enable="false"/> </assemblyBinding> </runtime> </configuration> ``` ## 请参阅 [.NET Framework Assembly Unification Overview](https://msdn.microsoft.com/zh-cn/library/db7849ey.aspx) [&lt;supportPortability&gt; 元素](https://msdn.microsoft.com/zh-cn/library/ee663090.aspx) [C# Compiler Options Listed Alphabetically](https://msdn.microsoft.com/zh-cn/library/6ds95cz0.aspx)