c# - .Net 4.0 C# 项目是否需要 app.config?

标签 c# visual-studio-2010

令我非常恼火的是,当我将目标从 .NET Framework 3.5 更改为 .NET Framework 4.0 时,Visual Studio 2010 将 App.config 文件添加到我的所有 .EXE 项目中。因此,在我 checkin 这些新文件之前,我的自动构建中断了。

我不能删除这些 App.config 文件有什么特别的原因吗?或者 Visual Studio 会继续将它们添加到我的项目中吗?

我不会对将无用文件添加到我的项目的工具大声疾呼。 . .

澄清:

我了解 app.config 的用途。我不明白的是,当我将项目更改为面向 .NET 4.0 而不是 .NET 3.5 时,为什么 Visual Studio 2010 会向现有项目添加 app.config 文件。我的应用程序不需要 app.config 中的任何东西来运行,所以我唯一合理的结论是 Visual Studio 出于某种原因需要 app.config 才能编译,或者有人认为他们比我更了解并且我的应用程序必须有一个 app.config,即使我不想要一个。

糟糕...我咆哮了。

进一步说明:

将项目从 Visual Studio 2008 转换为 Visual Studio 2010 不是问题。当我将目标从 .NET Framework 3.5 更改为 .NET Framework 4.0 时,app.config 被添加到项目中。 app.config 包含以下内容:

<configuration>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
  </startup>
</configuration>

当我将其改回目标 .NET Framework 3.5 时,app.config 文件被修改为:

<supportedRuntime version="v2.0.50727"/>

我想我明白他们想做什么,但是自动添加 app.config 文件是一个非常糟糕的主意。

最佳答案

我唯一知道在 .NET 4 项目中 需要 app.config 是在引用 CLR-2.0 混合模式程序集时。在这种情况下,您需要将 useLegacyV2RuntimeActivationPolicy="true"添加到启动元素中,否则会在运行时出错。

但是VS转换工具并没有检测到这一点,默认添加了一个确实不需要的app.config文件。如果您能够在转换后运行,这对您来说可能不是问题。

否则,您可以随意删除它(当然,除非您将其用于其他目的)。

关于c# - .Net 4.0 C# 项目是否需要 app.config?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3833237/

相关文章:

c# - 使用 Windbg 的 !clrstack 命令调试死锁

c# - 子控件中的 `DesignMode` 设置不正确?

c++ - ntdll.dll [下面的框架可能不正确/缺失,没有为 ntdll.dll 加载符号]

visual-studio-2010 - 对于已卸载的扩展,Visual Studio 2010 包未正确加载

c# - 为什么 Console.WriteLine() 函数会遗漏字符串中的某些字符?

c# - Visual Studio 2008 培训

c# - 异常的 WCF 客户端行为

visual-studio-2010 - 如果您的鼠标没有滚动​​条,是否可以放大到 Visual Studio 2010

.net - 除了购买 VS 2010,您将来会使用哪些选项进行 .net 开发?

c++ - C++ 项目可以在 Visual Studio 2010 中使用 T4 吗?