我從Java到C#這些天,並使用Visual C#2010 express。尋找一種簡單的方法來編寫和測試一些代碼,在視覺c#
有時我想編寫和測試一些簡單的代碼,但是我發現它並不像Eclipse中那麼容易:在任何java文件中編寫main
方法,然後運行它。
在VC#中,當我在.cs文件中添加Main
方法時,它會注意到此項目中有兩個Main
條目。我必須在運行之前重命名另一個,並且稍後必須重新命名。
有沒有簡單的方法來做到這一點?
我從Java到C#這些天,並使用Visual C#2010 express。尋找一種簡單的方法來編寫和測試一些代碼,在視覺c#
有時我想編寫和測試一些簡單的代碼,但是我發現它並不像Eclipse中那麼容易:在任何java文件中編寫main
方法,然後運行它。
在VC#中,當我在.cs文件中添加Main
方法時,它會注意到此項目中有兩個Main
條目。我必須在運行之前重命名另一個,並且稍後必須重新命名。
有沒有簡單的方法來做到這一點?
正如@亞歷山大R說,LINQPad是一個偉大的工具。我將它廣泛用於小片段,比如測試我發佈到Stack Overflow的答案。
如果我必須能夠在我當前的項目中調用其他代碼,我將一個單元測試項目添加到我的解決方案。當我想測試某些東西時,我使用新的測試方法編寫代碼,然後使用Ctrl + R,Ctrl + T快捷鍵運行當前選定的測試方法。
單聲道編譯器包含REPL實用程序(http://www.mono-project.com/CsharpRepl)。類似的東西應該包含在未來版本的C#/ Visual Studio中(請參閱Roslyn project的最新CTP)。
另一種可能性是'test driven .Net'實用程序,但不適用於Visual Studio Express。它(a.o.)允許您直接從Visual Studio中運行任何方法。
LINQPad和代碼片段編譯器也是可行的選項。
您也可以簡單地創建一個.cs文件並在命令行上進行編譯。例如,把這個代碼在一個文件名爲hello.cs中
using System;
public class Program {
public static void Main() {
Console.WriteLine("Hello World");
}
}
然後在命令行上,編譯csc hello.cs
=>這產生用hello.exe然後可以運行。
在VC#中,當我在.cs文件中添加一個Main方法時,它會注意到這個項目中有兩個Main條目。
然後不要再添加main
方法。當您創建控制檯或WinForms應用程序時,Program.cs文件將包含一個主要方法。如果你想測試一些東西,比如你寫的類,只需在現有的main方法中實例化這個類即可。
作爲解決方案,爲什麼不將 public testXXXX()方法添加到要測試的每個類中,然後使用1個主要方法調用這些testXXXX()方法。
這一切都取決於您正在處理的項目*類型。您可以在解決方案上始終擁有一個「控制檯應用程序」項目,因此您可以將其用作代碼的「調試器」。 – 2012-07-31 08:11:18