.NET Core- "dotnet new sln"을 사용하는 경우


87

내가 읽은 .NET Core 자습서의 대부분은 "dotnet new sln"에 대해 언급하지 않았습니다. 항상 서로 연결하는 솔루션 파일없이 프로젝트를 별도로 생성합니다.

  1. "dotnet new sln"이 새로운 명령입니까?

  2. 언제 사용해야합니까? 프로젝트 파일이 아닌 .sln 파일을 만들면 어떤 이점이 있습니까? 주로 Visual Studio에서 열기위한 것입니까? Mac 용 Visual Studio Code를 사용하므로 적용되지 않을 수 있습니다.

나는 "dotnet new sln"을 검색했고 그 결과는 매우 적다.


dotnet명령 줄에서 어떤 버전을 사용하고 있습니까? 즉, 글을 쓸 때 무엇을 보게 dotnet --version됩니까?
Shaun Luttin

안녕하세요 @ShaunLuttin 난 그냥 몇 일 전에 업그레이드 ... 1.0.1
AndyNZ에게

답변:


148

"dotnet new sln"이 새로운 명령입니까?

예. dotnet 명령 줄 인터페이스 버전 1.0.1에는 dotnet new sln명령이 있습니다. 이 명령은 project.json에서 csproj로 변경되었습니다 . 를 실행 dotnet new --help하면 템플릿 중 하나로 "Solution File"이 표시됩니다.

> dotnet new --help

Templates                 Short Name      Language      Tags
----------------------------------------------------------------------
Console Application       console         [C#], F#      Common/Console
Class library             classlib        [C#], F#      Common/Library
Unit Test Project         mstest          [C#], F#      Test/MSTest
xUnit Test Project        xunit           [C#], F#      Test/xUnit
ASP.NET Core Empty        web             [C#]          Web/Empty
ASP.NET Core Web App      mvc             [C#], F#      Web/MVC
ASP.NET Core Web API      webapi          [C#]          Web/WebAPI
Solution File             sln                           Solution

언제 사용해야하나요?

솔루션 파일을 사용하는 두 번은 다음과 같습니다.

  1. Visual Studio를 사용하려는 경우 및 / 또는
  2. 여러 프로젝트를 하나의 단위로 관리하고 싶을 때.

프로젝트 파일이 아닌 .sln 파일을 만들면 어떤 이점이 있습니까? 주로 Visual Studio에서 열기위한 것입니까? Mac 용 Visual Studio Code를 사용하므로 적용되지 않을 수 있습니다.

Visual Studio가 필요하지 않은 이점 중 하나는 여러 프로젝트를 단일 단위로 관리한다는 것입니다.

예를 들어 Visual Studio Code가있는 Mac에서 dotnetCLI를 사용하여 새 솔루션을 만들고 몇 가지 프로젝트를 만들고 해당 프로젝트를 솔루션에 추가하고 솔루션을 복원하고 솔루션을 빌드 할 수 있습니다.

dotnet new sln --name FooBar
dotnet new console --name Foo --output Foo
dotnet new console --name Bar --output Bar
dotnet sln add .\Foo\Foo.csproj
dotnet sln add .\Bar\Bar.csproj
dotnet restore
dotnet build FooBar.sln

를 호출하는 마지막 명령 dotnet build은 솔루션에있는 모든 프로젝트를 빌드하는 이점이 있습니다. 해결책이 없으면 dotnet build각 프로젝트 를 호출해야합니다 .

Visual Studio를 사용할 필요가없는 다른 이점은 의심 할 여지가 없습니다. 나는 그것들을 발견하기 위해 당신에게 맡깁니다.


클래스 라이브러리 프로젝트 및 관련 테스트 프로젝트에 솔루션을 사용하는 것이 좋습니까?
Horia 코만

@HoriaComan 그에 대한 해결책을 사용하는 것이 합리적입니다.
Shaun Luttin

dotnet run -p Foo\Foo.csprojmvc 프로젝트에 사용할 수 있습니까 ? 내가 할 경우에만 작동하는 것 같다cd Foo && dotnet run
빈센트 드 스멧

@VincentDeSmet dotnet run -p .\Foo\Foo.csproj은 나를 위해 일합니다.
Shaun Luttin

그것은 나를 위해 하위 폴더에 있던 config.Development.json 가지고 있지에 대해 불평
빈센트 드 스멧을
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.