如何在VS 2010中更改类库的语言

时间:2011-08-22 12:41:01

标签: .net visual-studio-2010

我在vs 2010中创建了vb控制台应用程序项目,并添加了一个简单代码的类。

然后我用c#代码替换此代码,并且“我已将.vb的扩展名更改为.cs。

但我无法运行此应用程序,因为我遇到了错误:

在'Test_VB_ClassLibrary'中找不到'Sub Main'

我可以将我的项目转换为c#?

3 个答案:

答案 0 :(得分:3)

我不知道你可以更改项目的语言 - 它会改变文件扩展名和所有内容。创建一个新项目可能更简单......如果你想让它在同一个地方,只需重命名并先移动旧项目。

编辑:如评论中所述,您可以更改语言。但是,请尽快做出正确的决定,或者创建一个新项目。

答案 1 :(得分:2)

您不仅可以更改文件扩展名,还可以使用此功能。涉及许多其他文件和设置。您的错误是因为C#中不存在“Sub Main”,而VB下的项目设置表明Sub Main是您应用的启动位置。

您必须创建一个新项目并重新编写代码。

答案 2 :(得分:2)

您最好重新创建项目,如果您真的想这样做,那么在记事本/文本编辑器中打开vbproj文件,找到以下内容行:

<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />

将其更改为以下内容:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

您还需要将文件重命名为.csproj扩展名,以便Visual Studio正确显示项目。

您当前的构建问题是由于启动对象的名称也已更改而引起的 - 要解决此问题,请转到项目属性下的“应用程序”选项卡,并确保正确设置了启动对象属性。

此时您的项目现在是一个C#项目文件 - 项目中存在的任何.vb文件(包括设计器生成的文件)都无法正确构建,您需要删除它们或将它们转换为C#。

有效(我已尝试过),但是如果设置了错误的MSBuild属性,则很可能会遇到其他问题,例如执行上述步骤后:

  • 项目没有为调试配置选中“定义DEBUG常量”复选框
  • “抑制警告”属性中也有大量条目,这些条目通常不适用于C#项目

我的建议再一次是从头开始重新创建项目。