2016-05-20 34 views
6

Tôi đang cố gắng nâng cấp các dự án ASP.NET 5 RC1 của mình lên dự án ASP.NET Core RC2. Tôi đang gặp một số vấn đề vì tôi đang sử dụng các thư viện chưa hỗ trợ .NET Core nên tôi phải chạy trên toàn bộ khung công tác. Điều này đã làm việc tốt trong RC1, nhưng tôi không thể tìm ra đúng cách để đạt được điều này trong RC2.Sử dụng net451 thư viện trong ứng dụng ASP.NET Core (RC2)

Tôi có một thư viện lớp có thể khôi phục các gói và xây dựng đúng cách. Và tôi có một dự án thử nghiệm tham khảo thư viện lớp. Khi tôi cố gắng xây dựng các dự án thử nghiệm, tôi nhận được các lỗi sau đây:

> dotnet build 
Project TenantService (.NETFramework,Version=v4.5.1) was previously compiled. Skipping compilation. 
Project TenantServiceTests (.NETCoreApp,Version=v1.0) will be compiled because expected outputs are missing 
Compiling TenantServiceTests for .NETCoreApp,Version=v1.0 
C:\projects\TenantService\test\TenantServiceTests\project.json(25,23): error NU1001: The dependency mscorlib could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency mscorlib could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(25,23): error NU1001: The dependency mscorlib could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency mscorlib could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(26,21): error NU1001: The dependency System could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency System could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(26,21): error NU1001: The dependency System could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency System could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(27,26): error NU1001: The dependency System.Core could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency System.Core could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(27,26): error NU1001: The dependency System.Core could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency System.Core could not be resolved. 
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency Microsoft.CSharp could not be resolved. 

Các tập tin project.json cho hai dự án này trông như thế này:

src \ TenantService \ project.json

{ 
    "version": "1.0.0-*", 

    "dependencies": { 
    "NETStandard.Library": "1.5.0-rc2-24027", 
    "Microsoft.Extensions.Options": "1.0.0-rc2-final", 
    "Newtonsoft.Json": "8.0.4-beta1", 
    "MongoDB.Driver": "2.2.4", 
    "StackExchange.Redis": "1.1.603" 
    }, 

    "frameworks": { 
    "net451": {} 
    } 
} 

test \ TenantServiceTests \ project.json

{ 
    "version": "1.0.0-*", 
    "testrunner": "xunit", 
    "description": "TenantServiceTests Class Library", 
    "authors": [ "Henning" ], 

    "dependencies": { 
    "xunit": "2.1.0", 
    "TenantService": "1.0.0-*", 
    "dotnet-test-xunit": "1.0.0-rc2-build10015" 
    }, 

    "frameworks": { 
    "netcoreapp1.0": { 
     "dependencies": { 
     "Microsoft.NETCore.App": { 
      "type": "platform", 
      "version": "1.0.0-rc2-3002702" 
     } 
     }, 
     "imports": [ 
     "net451" 
     ] 
    } 
    } 
} 

Tôi nên thiết lập đúng cách này để sử dụng net451 thư viện trong ứng dụng của mình như thế nào?

Trả lời

2

Các mscorlib phụ thuộc không thể được giải quyết

Tôi chạy vào vấn đề này cùng ngày hôm qua. Vấn đề là project.json cho dự án thử nghiệm đang nhắm mục tiêu netcoreapp1.0. Thay vào đó, bạn có thể nhắm mục tiêu khuôn khổ net451 như dịch vụ bạn đang thử nghiệm và điều đó sẽ "chỉ hoạt động".

{ 
    "version": "1.0.0-*", 
    "testrunner": "xunit", 
    "description": "TenantServiceTests Class Library", 
    "authors": [ "Henning" ], 

    "dependencies": { 
    "xunit": "2.1.0", 
    "TenantService": "1.0.0-*", 
    "dotnet-test-xunit": "1.0.0-rc2-build10015" 
    }, 

    "frameworks": { 
    "net451": { } 
    } 
} 

Để biết thêm chi tiết về việc thanh toán này, Migrating from ASP.NET 5 RC1 to ASP.NET Core. Một tài nguyên tuyệt vời khác là tệp đánh dấu trên số corefx repo chi tiết Nền tảng .NET chuẩn.

+1

Điều này có thực sự trả lời câu hỏi về cách sử dụng các thư viện net451 trong ứng dụng ASP.NET Core (RC2) không? Trừ khi tôi về cơ bản hiểu nhầm một cái gì đó, có vẻ như câu trả lời này chỉ là gợi ý bạn sử dụng net451 thư viện trong các ứng dụng net451 thay thế. –

Các vấn đề liên quan