Visual Studio 2012中具有.bak扩展名的类文件

时间:2014-02-17 16:34:22

标签: c# visual-studio-2012

是否在运行时使用类MyClass.cs.bak这样的类文件,即使在同一个Visual Studio项目中有一个名为MyClass.cs的类文件?

这两个文件都包含在项目中。该项目属于Web应用程序类型,因此在部署时,所有内容都会编译为单个dll。我不确定在编译期间是否会忽略.bak文件。

我正在使用Visual Studio中的一个项目,其中一些过去的开发人员已将这两个文件包含在项目中。

3 个答案:

答案 0 :(得分:4)

如果在解决方案资源管理器中单击该文件并查看“属性”窗口,您将看到一个名为“构建操作”的属性。这定义了文件是被视为代码(“编译”),包含为资源(“嵌入式资源”)还是被忽略(“无”)。

将文件添加到项目时,将根据文件扩展名选择默认的“构建操作”。对于对C#项目没有特殊意义的.bak文件,应选择默认的“None”,编译项目时将忽略该文件。

答案 1 :(得分:1)

据我所知(并检查),通过默认*.bak文件被视为VS Project中的C#类文件。它只是另一个文本文件,它没有作为class模块包含在程序集中 - 顺便说一下,为什么你没有得到重复的类名声明异常。

您可以随时告诉VS将其视为可编辑的c#文件:属性 - >构建行动 - >编译。

它看起来像一个备份(bak)源文件 - 仅用于历史目的,我假设。

答案 2 :(得分:1)

没有

.bak文件被视为普通文本文件。

这很容易测试。创建一个新的类文件,类名为foo

现在创建一个新的.cs.bak文件并输入相同的代码。

编译项目时,您会发现重复的类声明错误 - 这不会发生。