How to Compile a C# Project from Source

2019-01-15 02:28发布

So I mean compile without visual studio

7条回答
forever°为你锁心
2楼-- · 2019-01-15 02:36

use command line with csc.exe or msbuild

查看更多
等我变得足够好
3楼-- · 2019-01-15 02:42

Go to the project directory (I assume .NET framework is in your PATH):

msbuild <enter>

If you want to compile a bunch of C# source files (not in a project), you'd use the csc command. vbc is VB.NET compiler. jsc is JScript.NET compiler. cl is C++/CLI (& plain C++) compiler.

查看更多
家丑人穷心不美
4楼-- · 2019-01-15 02:42

There are currently three ways to compile a C# project. The first is with Visual Studio, but you've stated that VS not installed is a constraint. The second is using the raw .NET SDK tools. The third way is to use Mono.

Using msbuild requires Visual Studio to be installed. Using csc does NOT, however it does require the .NET SDK to be installed.

Using .NET:

  • Compiles File.cs producing File.exe:

    csc File.cs

  • Compiles File.cs producing File.dll:

    csc /target:library File.cs

  • Compiles File.cs and creates My.exe:

    csc /out:My.exe File.cs

  • Compiles all of the C# files in the current directory, with optimizations on and defines the DEBUG symbol. The output is File2.exe:

    csc /define:DEBUG /optimize /out:File2.exe *.cs

Using Mono:

  • Compiles File.cs producing File.exe compat with .NET 1.1:

    mcs File.cs

or for .NET 2.0 compatible

gmcs File.cs
  • Compiles File.cs producing File.dll:

    msc /target:library File.cs

  • Compiles File.cs and creates My.exe:

    msc /out:My.exe File.cs

  • Compiles all of the C# files in the current directory, with optimizations on and defines the DEBUG symbol. The output is File2.exe:

    msc /define:DEBUG /optimize /out:File2.exe *.cs

查看更多
倾城 Initia
5楼-- · 2019-01-15 02:44

If you already have a solution or project file, use msbuild tool. You can find it deeply inside folder "%windir%\Microsoft.NET\". For example, on my machine I run the following to compile my project:

C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe MassiveMultithreading.sln
查看更多
孤傲高冷的网名
6楼-- · 2019-01-15 02:47

From here:

Compiles File.cs producing File.exe:

csc File.cs

Compiles File.cs producing File.dll:

csc /target:library File.cs

Compiles File.cs and creates My.exe:

csc /out:My.exe File.cs

Compiles all the C# files in the current directory, with optimizations on and defines the DEBUG symbol. The output is File2.exe:

csc /define:DEBUG /optimize /out:File2.exe *.cs
查看更多
疯言疯语
7楼-- · 2019-01-15 02:54

I created a batch file that i use for this, so I can compile multiple projects in a row. This should help you get in the right direction:

cls
echo off
c:


cd windows
cd microsoft.net
cd framework
cd v3.5

msbuild c:\Project\Project.sln /t:rebuild /p:Configuration=Debug /p:Platform="any cpu" /clp:Nosummary 
查看更多
登录 后发表回答