我在Visual Studio中有一个C#项目,它下面有几个类。我试图单独运行每个类,但是当我点击启动或调试按钮时,只有一个类(我创建的第一个)运行。我试图右键单击其他类但它们没有运行选项。我正在使用Visual Studio Express 2013
更新(澄清问题)
在Solution
C-SharpTutorial下,我有两个.cs
文件(ArrayTest.cs和Program.cs)。问的是,是否可以单独运行这些文件。现在,我只能运行Program.cs
文件,这是我创建的第一个文件。
答案 0 :(得分:1)
我认为 classes 实际上意味着项目。因为一个解决方案包含一个或多个项目,所以可以运行项目。
答案就在这里:http://msdn.microsoft.com/en-us/library/a1awth7y.aspx
设置单个启动项目
- 在解决方案资源管理器中,选择解决方案中所需的启动项目。
- 在“项目”菜单上,选择“设为启动项目”。
醇>
否则,请澄清您的问题。
好的,我假设你有一个控制台应用程序。虽然您不能运行类",但您可以设置启动方法:http://www.codeproject.com/Articles/479467/Main-Method-in-Csharp
一个类是一组方法。要执行(非静态)方法,必须实例化一个类。但是运行时不知道如何调用任意构造函数。因此,程序执行以名为" Main"。
的静态方法开始如果多个类包含合适的Main()方法,您应该能够根据上面的链接选择所需的类。
答案 1 :(得分:1)
听起来你的意思是项目,而不是 Classes 。要更改启动调试模式时执行的项目,可以右键单击项目并选择“设置活动项目”。
如果在引用的任何其他项目中设置断点,它们仍将被命中,您将能够使用Visual Studio进行调试。
如果需要运行多个项目,则需要从 bin \ Debug 文件夹中手动运行这些项目,然后使用Visual Studio中的“附加到进程”功能将调试器附加到这些过程,以便您可以调试它们。
<强>更新强>
不,你不能分别“运行”两个不同的类。控制台应用程序只有一个入口点。但是,如果您正在学习C#并测试代码,则可以使用switch语句。
例如:
void main()
{
Console.Write("Choose Option (1/2):");
var key = Console.ReadKey().KeyChar;
switch (key)
{
case "1":
{
var arrayTest = new ArrayTest();
arrayTest.Run();
break;
}
case "2":
{
var anotherTest = new AnotherTest();
anotherTest.Run();
break;
}
}
}
这样,当应用程序运行时,它会提示您输入密钥,您可以按1或2执行任何操作。
话虽如此,为了编写基本测试代码,我发现使用LINQPad显着提高效率,因为它绕过了编写所有样板控制台应用程序代码的需要。