2017-03-11 4 views
29

मैं थोड़ा उलझन में - नेट कोर ट्यूटोरियल मैं पढ़ कर दिया गया है के बहुमत का उल्लेख नहीं किया है "डॉटनैट नई SLN" - वे हमेशा से ही परियोजनाओं के साथ अलग से बनाने उन्हें एक साथ जोड़ने के लिए कोई समाधान फ़ाइल नहीं।नेट कोर - जब उपयोग करने के लिए "डॉटनैट नई SLN"

  1. "dotnet new sln" एक नया आदेश है?

  2. जब मैं इस का उपयोग करना चाहिए? प्रोजेक्ट फाइलों के बजाए एक एसएलएन फाइल बनाने से मुझे क्या लाभ मिलते हैं? क्या यह मुख्य रूप से विजुअल स्टूडियो में खुलने के लिए है? मैं मैक के लिए विजुअल स्टूडियो कोड का उपयोग करता हूं, इसलिए लागू नहीं हो सकता है।

मैंने "डॉटनेट नया एसएलएन" गुगल किया है और परिणाम बहुत कम हैं।

+0

'dotnet' का कौन-सा संस्करण कमांड लाइन से उपयोग कर रहे हैं? यही है, जब आप 'dotnet --version' लिखते हैं तो आप क्या देखते हैं? –

+0

हाय @ShunLuttin मैंने बस कुछ दिन पहले अपग्रेड किया ... 1.0.1 – AndyNZ

+0

https://docs.microsoft.com/en-us/dotnet/articles/core/tools/dotnet-sln – Wally

उत्तर

43

"डॉटनैट नई SLN" एक नया आदेश है?

हां। डॉटनेट कमांड लाइन इंटरफेस के संस्करण 1.0.1 में, dotnet new sln कमांड है। आदेश the change from project.json to csproj के साथ आया था। हम dotnet new --help है, तो हम टेम्पलेट्स में से एक के रूप में "समाधान फ़ाइल" देखेंगे।

> 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. जब हम दृश्य स्टूडियो का उपयोग करना चाहते, और/या
  2. हम एक इकाई के रूप में कई परियोजनाओं का प्रबंधन करना चाहते हैं।

क्या लाभ मैं एक SLN फ़ाइल बनाने के बजाय सिर्फ प्रोजेक्ट फ़ाइलें होने से हासिल करते हैं? क्या यह मुख्य रूप से विजुअल स्टूडियो में खुलने के लिए है? मैं मैक के लिए विजुअल स्टूडियो कोड का उपयोग करता हूं, इसलिए लागू नहीं हो सकता है।

विजुअल स्टूडियो की आवश्यकता नहीं होने वाले लाभों में से एक एक इकाई के रूप में कई परियोजनाओं का प्रबंधन है।

उदाहरण के लिए, पर वी.एस. साथ कोड एक मैक, हम dotnet CLI एक नया समाधान बनाने के लिए उपयोग कर सकते हैं कुछ परियोजनाएं बनाने, समाधान के लिए उन परियोजनाओं जोड़ने के लिए, समाधान बहाल, और समाधान का निर्माण।

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 कॉल करने के लिए की आवश्यकता होगी।

इसमें कोई संदेह नहीं है कि विजुअल स्टूडियो के उपयोग की आवश्यकता नहीं है। मैं आपको खोजने के लिए उनको छोड़ देता हूं।

+0

क्या आप समाधान का उपयोग करने की सलाह देंगे एक कक्षा पुस्तकालय परियोजना और इसके संबंधित परीक्षण परियोजना के लिए? –

+0

@ हॉरियाकॉमन इसके लिए एक समाधान का उपयोग करना उचित लगता है, हां। –

+0

धन्यवाद शॉन! –

संबंधित मुद्दे