ฉันใช้ VS 2015
โครงการของคุณไม่ได้อ้างถึงกรอบงาน ".NETFramework, Version = 4.5" เพิ่มการอ้างอิงถึง ".NETFramework, Version = 4.5" ในส่วน "frameworks" ของ project.json ของคุณจากนั้นเรียกใช้ NuGet restore อีกครั้ง
ฉันได้รับข้อผิดพลาดนี้ในเลเยอร์การเข้าถึงข้อมูลและ Business Logic ของฉันไม่นานหลังจากเพิ่มลงใน MVC Layer จนถึงตอนนั้นสิ่งต่างๆกำลังดำเนินไปด้วยดี แต่ฉันไม่รู้ว่าอะไรทำให้เกิดข้อผิดพลาดนี้ นี่คือ project.json ของฉัน:
{
"version": "1.0.0-*",
"description": "foo bar Class Library",
"authors": [ "foo bar" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"frameworks": {
"net451": { },
"dotnet5.4": {
"dependencies": {
"Microsoft.CSharp": "4.0.1-beta-23516",
"System.Collections": "4.0.11-beta-23516",
"System.Linq": "4.0.1-beta-23516",
"System.Runtime": "4.0.21-beta-23516",
"System.Threading": "4.0.11-beta-23516"
}
}
}
}
นี่คือสิ่งที่ฉันได้ลอง:
- แทนที่ "dotnet5.4" ด้วย "net451" (และลบออก) ดังที่พบในคำตอบนี้
ผลลัพธ์คือข้อผิดพลาดเดียวกัน
- แทนที่ "dotnet5.4" ด้วย "net45" และออกจาก "net451" ส่งผลให้เกิดข้อผิดพลาดใหม่:
project.json ของคุณไม่มีส่วน runtimes คุณควรเพิ่ม "" runtimes ": {" win ": {}}" ใน project.json ของคุณจากนั้นเรียกใช้ NuGet restore อีกครั้ง
ฉันลองทำตามข้อผิดพลาดนี้แนะนำและเพิ่ม
"runtimes": {
"win": {}
},
สิ่งนี้ทำให้ฉันเกิดข้อผิดพลาดซึ่งดูเหมือนว่าฉันจะไม่สามารถผ่านพ้นไปได้:
project.json ของคุณไม่แสดงรายการ "win" เป็นรันไทม์เป้าหมาย คุณควรเพิ่ม "win": {} "ไว้ในส่วน" runtimes "ใน project.json ของคุณจากนั้นเรียกใช้ NuGet restore อีกครั้ง
ฉันได้เพิ่มคำว่า "win" แล้วและนี่ก็เริ่มรู้สึกเหมือนปลาชนิดหนึ่ง ฉันกำลังทำอะไรเปลี่ยนแปลง project.json โดยตรง NuGet จัดการสิ่งนี้ไม่ใช่หรือ