คำถามติดแท็ก .net-core

.NET Core เป็นผู้สืบทอดโอเพนซอร์ซของ. NET Framework สามารถใช้ในแอพพลิเคชั่นและแนวตั้งได้หลากหลายตั้งแต่เซิร์ฟเวอร์และศูนย์ข้อมูลไปจนถึงแอพและอุปกรณ์ .NET Core รองรับโดย Microsoft บน Windows, Linux และ macOS

9
ความแตกต่างของ AddTransient, AddScoped และ AddSingleton
ฉันต้องการติดตั้งระบบฉีดพึ่งพา (DI) ใน ASP.NET Core ดังนั้นหลังจากเพิ่มรหัสนี้ในConfigureServicesวิธีการทั้งสองวิธีทำงาน ความแตกต่างระหว่างservices.AddTransientและservice.AddScopedวิธีการใน ASP.NET Core คืออะไร? public void ConfigureServices(IServiceCollection services) { // Add framework services. // Add application services. services.AddTransient<IEmailSender, AuthMessageSender>(); services.AddScoped<IEmailSender, AuthMessageSender>(); }

12
ข้อแตกต่างระหว่างประเภทโครงการ. NET Core และ. NET Class Class Library คืออะไร
ใน Visual Studio มีไลบรารีคลาสต่าง ๆ อย่างน้อย 3 ชนิดที่คุณสามารถสร้างได้: ไลบรารีคลาส (.NET Framework) ไลบรารีคลาส (มาตรฐาน. NET) ไลบรารีคลาส (. NET Core) ในขณะที่สิ่งแรกคือสิ่งที่เราใช้มานานหลายปีความสับสนที่สำคัญที่ฉันมีคือเมื่อใช้ประเภทไลบรารีคลาส. NET Standard และ. NET Core ฉันได้รับการกัดโดยเมื่อเร็ว ๆ นี้เมื่อพยายามหลายเป้าหมายรุ่นกรอบที่แตกต่างกันและการสร้างโครงการทดสอบหน่วย ดังนั้นอะไรคือความแตกต่างระหว่างClass Library (. NET Standard)และClass Library (.NET Core)ทำไมทั้งคู่จึงมีอยู่และเมื่อใดเราจึงควรใช้อันอื่น

5
สร้างแอปพลิเคชันคอนโซล. NET Core เพื่อส่งออก EXE
สำหรับโครงการแอปพลิเคชันคอนโซลที่กำหนดเป้าหมาย. NET Core 1.0 ฉันไม่สามารถทราบวิธีรับ. exe เพื่อแสดงผลในระหว่างการบิลด์ โครงการทำงานได้ดีในการดีบัก ฉันพยายามเผยแพร่โครงการ แต่ก็ไม่ได้ผลเหมือนกัน มันสมเหตุสมผลแล้วเนื่องจากไฟล์ EXE จะเป็นแบบเฉพาะแพลตฟอร์ม แต่ต้องมีวิธี การค้นหาของฉันมีการอ้างอิงถึงรุ่น. NET Core รุ่นเก่าที่ใช้ project.json เท่านั้น เมื่อใดก็ตามที่ฉันสร้างหรือเผยแพร่นี่คือทั้งหมดที่ฉันได้รับ:
413 .net-core 

8
ความแตกต่างระหว่าง. NET Core,. NET Framework และ Xamarin คืออะไร
ขณะนี้ Microsoft มี. NET Core, .NET Framework และ Xamarin (Mono) ในตระกูล. NET ดูเหมือนจะมีการทับซ้อนกันมากมายที่นี่ . NET ประเภทนี้แตกต่างกันอย่างไร เมื่อใดที่ฉันควรเลือกใช้. NET Core ในโครงการของฉันแทนที่จะเป็น. NET Framework หรือ Xamarin
362 .net  xamarin  .net-core 

12
“. NET Core” คืออะไร
เมื่อเร็ว ๆ นี้ในทางการ.NET Framework บล็อกมันก็ประกาศว่า.NET หลักเป็นไปโอเพนซอร์ส ผู้เขียนกล่าวถึงสิ่งที่ . NET Core จะถูกอธิบายในโพสต์ถัดไป บางรายละเอียดเพิ่มเติมที่กล่าวถึงในการโพสต์ประกาศอีก จากแผนภาพที่ให้มา: และบทความที่เป็นข้อความตัวเองฉันจะสมมติว่า. NET Core (นอกเหนือจากสิ่งที่ชัดเจนเช่นการเปิดแหล่งที่มา) เป็นการนำมาใช้ใหม่แบบแยกส่วนของ. NET แบบเต็ม Ie framework components ถูกโหลดตามความจำเป็นเหมือนตอนที่โหลดแพ็คเกจ NuGet และตอนนี้ ASP.NET 5 เป็นหนึ่งในโมดูลที่มีการใช้งานแล้ว ความเข้าใจของฉันเกี่ยวกับ. NET Core ถูกต้องหรือไม่ บางทีฉันอาจจะหายไปบางอย่าง ฉันได้พบบทความล่าสุดซึ่งฉันพบว่าทั้งสั้นและดีมาก มันครอบคลุม. NET Standard,. NET Core และ. NET Framework และความสัมพันธ์ของพวกเขา ฉันขอแนะนำอย่างยิ่ง
323 .net  .net-core 

13
วิธีการตรวจสอบว่ามีการติดตั้ง. NET Core
ฉันรู้ว่าสำหรับ. NET รุ่นเก่าคุณสามารถตรวจสอบว่ามีการติดตั้งรุ่นที่กำหนดโดยทำตาม https://support.microsoft.com/en-us/kb/318785 มีวิธีการอย่างเป็นทางการของการกำหนดว่า .NET หลักมีการติดตั้ง? (และฉันไม่ได้หมายถึง SDK ฉันต้องการตรวจสอบเซิร์ฟเวอร์ที่ไม่มี SDK เพื่อตรวจสอบว่ามี DotNetCore.1.0.0-WindowsHosting.exe ติดตั้งอยู่หรือไม่) ฉันเห็น HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NET Cross-Platform Runtime Environment\.NET Framework 4.6\Win\v1-rc1 ด้วย Version # 1.0.11123.0 บนเครื่อง windows 7 ของฉัน แต่ฉันไม่เห็นสิ่งเดียวกันในเครื่อง Windows 10 ของฉัน

29
ไม่พบไฟล์ไฟล์ project.assets.json เรียกใช้แพคเกจ NuGet คืนค่า
ฉันพยายามใช้ nopCommerce (ซึ่งเขียนใน. NET Core) แต่เมื่อฉันต้องการเรียกใช้โครงการฉันพบข้อผิดพลาด 52 ข้อที่บอกฉันให้เรียกใช้แพคเกจ nuget ไฟล์สินทรัพย์ ~ \ obj \ project assets.json 'ไม่พบ เรียกใช้แพคเกจ NuGet คืนค่าเพื่อสร้างไฟล์นี้ Nop.Web.MVC.Testsote เมื่อฉันใช้คลิกขวาบนโซลูชันและเลือกแพคเกจคืน Nuget ฉันได้รับข้อความนี้: แพคเกจทั้งหมดได้รับการติดตั้งแล้วและไม่มีอะไรที่จะกู้คืน แต่ข้อผิดพลาด 52 ข้อนั้นยังคงมีอยู่และในเครื่องมือ -> ตัวจัดการแพ็คเกจ NuGet -> จัดการแพคเกจ NuGet สำหรับการแก้ปัญหา ไม่มีสิ่งใดติดตั้งบนโซลูชันฉันยังอัปเดต VS2017 เป็น 15.5.4 ด้วย

7
.NET Core vs Mono
อะไรคือความแตกต่างระหว่าง. NET Core และ Mono ฉันพบคำแถลงเกี่ยวกับเว็บไซต์อย่างเป็นทางการที่กล่าวว่า: "โค้ดที่เขียนขึ้นสำหรับมันยังพกพาได้ในแอปพลิเคชันสแต็กเช่น Mono เป้าหมายของฉันคือใช้ C #, LINQ, EF7 และ Visual Studio เพื่อสร้างเว็บไซต์ที่สามารถรัน / โฮสต์บน Linux มีคนบอกฉันว่าเขาอยากให้มันเป็น "in Mono" แต่ฉันไม่รู้ว่ามันแปลว่าอะไร ฉันรู้ว่าฉันต้องการใช้. NET Core 1.0 กับเทคโนโลยีที่ฉันระบุไว้ข้างต้น เขายังบอกด้วยว่าเขาต้องการใช้ "CGI เร็ว" ฉันไม่รู้ว่านั่นหมายถึงอะไร คุณสามารถช่วยฉันทำความเข้าใจเงื่อนไขเหล่านี้และความคาดหวังของฉันเป็นจริงได้หรือไม่?
257 c#  .net  mono  .net-core 

21
วิธีอ่านค่า AppSettings จากไฟล์. json ใน ASP.NET Core
ฉันได้ตั้งค่าข้อมูล AppSettings ของฉันในไฟล์ appsettings / Config .json ดังนี้: { "AppSettings": { "token": "1234" } } ฉันค้นหาทางออนไลน์เกี่ยวกับวิธีการอ่านค่า AppSettings จากไฟล์. json แต่ไม่สามารถใช้ประโยชน์อะไรได้ ฉันเหนื่อย: var configuration = new Configuration(); var appSettings = configuration.Get("AppSettings"); // null var token = configuration.Get("token"); // null ฉันรู้ด้วย ASP.NET 4.0 คุณสามารถทำได้: System.Configuration.ConfigurationManager.AppSettings["token"]; แต่ฉันจะทำสิ่งนี้ใน ASP.NET Core ได้อย่างไร

7
.NET Standard vs .NET Core
ฉันได้อ่านเกี่ยวกับความแตกต่างระหว่าง. NET Standard และ. NET Core แต่ฉันไม่รู้จริง ๆ ว่าความแตกต่างคืออะไรหรือเมื่อใดที่จะเลือกโครงการไลบรารี. NET Standard และเมื่อใดควรเลือกโครงการไลบรารี. NET Core ฉันได้อ่านแล้วว่า. NET Standard นั้นเพื่อให้แน่ใจว่าชุดของ API นั้นพร้อมใช้งานเสมอไม่ว่าจะใช้แพลตฟอร์มใด (ตราบเท่าที่แพลตฟอร์มนั้นเข้ากันได้กับเวอร์ชัน. NET Standard ที่ฉันเลือก) ถ้าฉันไม่เข้าใจผิดนี่หมายความว่าฉันสามารถสร้างไลบรารีคลาสของ. NET Standard แล้วใช้บนแพลตฟอร์มใด ๆ ที่เข้ากันได้กับรุ่น. NET Standard ที่ฉันเลือกไว้ ด้วย. NET Core ฉันได้อ่านว่ามันมีไว้สำหรับการใช้ข้ามแพลตฟอร์มเช่นกันดังนั้นถ้าฉันเลือกไลบรารี. NET Core ดูเหมือนว่าฉันสามารถใช้กับแพลตฟอร์มหลาย ๆ แบบได้เช่นเดียวกับ. NET Standard ดังนั้นในตอนท้ายฉันไม่เห็นความแตกต่าง ฉันควรใช้อันไหน ความแตกต่างระหว่างพวกเขาคืออะไร?

6
เทียบเท่ากับ AssemblyInfo ใน dotnet core / csproj
ตั้งแต่จุดหลักของ dotnet ย้ายกลับไปที่.csprojรูปแบบจะมีการสร้างอัตโนมัติใหม่MyProject.AssemblyInfo.csซึ่งมีในหมู่อื่น ๆ [assembly: AssemblyCompany("MyProject")] [assembly: AssemblyVersion("1.0.0.0")] โปรดทราบว่าสิ่งนี้จะถูกสร้างใหม่ทุกบิลด์โดยอัตโนมัติ ก่อนหน้านี้พบไฟล์ในไดเร็กทอรี / obj / ตอนนี้ดูเหมือนว่าจะอยู่ในหน่วยความจำเท่านั้นเนื่องจากไม่พบไฟล์บนดิสก์และการคลิกที่ข้อความแสดงข้อผิดพลาดจะไม่เปิดไฟล์ใด ๆ นี่คือข้อความแสดงข้อผิดพลาด: AssemblyInfo.csเนื่องจากพวกเขามีการกำหนดไว้มีฉันไม่สามารถกำหนดให้ตัวเองอยู่ในคลาสสิก ฉันจะกำหนด บริษัท และเวอร์ชันของโครงการได้ที่ไหน

6
วิธีการเรียกใช้แอปคอนโซล. NET Core จากบรรทัดคำสั่ง
ฉันมีคอนโซลแอป .NET dotnet publishหลักและมีการวิ่ง อย่างไรก็ตามฉันไม่สามารถหาวิธีเรียกใช้แอปพลิเคชันจากบรรทัดคำสั่ง คำใบ้ใด ๆ

15
วิธีการยกเลิกการย้ายข้อมูลใน ASP.NET Core ด้วย EF Core
เมื่อฉันรันPM> Remove-Migration -context BloggingContextใน VS2015 ด้วยโครงการ ASP.NET Core โดยใช้ EF Core ฉันได้รับข้อผิดพลาดดังต่อไปนี้: System.InvalidOperationException: The migration '20160703192724_MyFirstMigration' has already been applied to the database. Unapply it and try again. If the migration has been applied to other databases, consider reverting its changes using a new migration. at Microsoft.EntityFrameworkCore.Migrations.Design.MigrationsScaffolder.RemoveMigration(String projectDir, String rootNamespace, …

5
.NET Core vs ASP.NET Core
อะไรคือความแตกต่างระหว่าง. NET Core และ ASP.NET Core? พวกเขาเป็นพิเศษร่วมกัน? ฉันได้ยินมาว่า ASP.NET Core นั้นสร้างขึ้นบน. NET Core แต่มันก็สามารถสร้างได้ในกรอบ NET เต็มรูปแบบ ดังนั้น ASP.NET Core คืออะไร?

7
ไม่พบ dotnet ef ใน. NET Core 3
ฉันกำลังติดตามเอกสารเพื่อสร้างการย้ายข้อมูลเริ่มต้น เมื่อฉันดำเนินการdotnetฉันจะได้รับส่วนช่วยเหลือซึ่งหมายความว่าเส้นทางทำงานได้อย่างถูกต้อง จากนั้นฉันพยายามเรียกใช้คำสั่งด้านล่างจากหน้าต่างเอกสารในคอนโซล: dotnet ef migrations add InitialCreate ฉันได้รับข้อผิดพลาดต่อไปนี้: Could not execute because the specified command or file was not found. Possible reasons for this include: * You misspelled a built-in dotnet command. * You intended to execute a .NET Core program, but dotnet-ef does not exist. * You intended …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.