[英]How to compile just one file in c#?
在VC ++中,我可以按CTRL + F7編譯單個文件,或者右鍵單擊源文件或編譯它。 是否可以在C#中編譯單個文件(或當前文件)?
我想知道我的當前文件是否有任何錯誤,而不必編譯所有內容。
對於單個.cs文件,編譯+運行:
如果這不起作用,請驗證cmd
和csc
路徑是否匹配。
不,不可能在C#中做到這一點。
與C ++不同,C#文件無法自行編譯,以確定它是否有任何錯誤。 C ++通過#include
語句實現了這一點,它允許.cpp文件理解可用類型的聲明。 這些聲明定義了當前文件所依賴的類型的結構,並允許編譯器確保根據規范使用它們。
此過程在C#中隱式處理。 可用的聲明集只是所有編譯文件中所有可以訪問的聲明的集合。 沒有辦法以C ++的方式轉發聲明依賴關系,因此無法確保它們在單個文件中正確使用。
像ReSharper這樣的Visual Studio加載項工具對於這種情況是一項非常好的投資。
ReSharper執行連續的后台解決方案范圍的代碼分析,並通過在代碼文件\\文檔滾動條旁邊方便地顯示一個條來報告問題,該條帶有紅色\\橙色線,表示任何有問題\\錯誤的代碼行。 顯示的行可以單擊導航到相關行,還有工具提示,詳細說明了確切的問題:
http://www.jetbrains.com/resharper/features/code_analysis.html#Continuous_Code_Quality_Analysis
http://www.jetbrains.com/resharper/features/screenshots/50/marker_bar.png
ReSharper可以檢查的問題\\警告是可配置的(但是它具有開箱即用的優秀配置),並且可以表示任何錯誤,這些錯誤會導致代碼無法編譯到檢測到可能的更微妙的問題null方法調用結果,尚未明確檢查。
在命令行中:%windir%\\ Microsoft.Net \\ framework \\ V3.5 \\ csc.exe / target:library File.cs
您可以通過工具 - >外部工具將其合理地附加到解決方案資源管理器上下文菜單中
將參數設置為/ target:library $(ItemPath)
這樣的事情可能會做你想要的。 雖然除了GAC中的內容之外,文件不得依賴於項目中的其他文件或引用的二進制文件。
Shift-F6將編譯當前程序集,這幾乎是你想要的。
是的,這是可能的。 您可以使用命令提示符直接調用編譯器。 即
csc hello.cs
hello.exe
執行單個文件 這至少會告訴您單個文件是否編譯。 您可以在此處找到更多信息: https : //msdn.microsoft.com/en-us/library/78f4aasd.aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.