2016-07-15 29 views
6

Tôi đang cố gắng chia dự án .NET Core thành các mối quan tâm riêng biệt bằng cách sử dụng Librairies lớp. Tôi muốn một (hoặc nhiều) thư viện lớp và một dự án chủ. Class librairies sẽ định nghĩa các bộ điều khiển MVC và logic nghiệp vụ trong khi dự án máy chủ sẽ chịu trách nhiệm cung cấp một máy chủ làm việc. Thật không may, dự án tham chiếu từ chối làm việc.Không thể dự án tham chiếu Thư viện lớp lõi .NET từ Dự án .NET đầy đủ

Hãy để tôi cung cấp cho bạn các bước tôi đã thực hiện để đến vấn đề này.

  1. Tạo giải pháp có sản phẩm nào trong Visual Studio 2015 Cập nhật 3
  2. Tạo một dự án kiểu Class Library (NET Core) tên ClassLibrary1
  3. Go trong project.json và sửa đổi nó để làm cho nó trông giống như dưới đây.
  4. Tạo một dự án kiểu Console Application (không NET Core) tên ConsoleApplication1
  5. Kích chuột phải vào trong tài liệu tham khảo dưới ConsoleApplication1 và thêm ClassLibrary1 như một tài liệu tham khảo Dự án.
  6. Tham chiếu đến loại tồn tại trong ClassLibrary1.
  7. Xây dựng giải pháp.

Điều này sẽ dẫn sự thất bại một xây dựng trong dự án ConsoleApplication1 với CS0246 mã lỗi: The type or namespace name 'ClassLibrary1' could not be found (are you missing a using directive or an assembly reference?). Nếu thay vì thêm tham chiếu làm Tham chiếu dự án Tôi truy cập và duyệt đến thư mục bin và tham khảo dll trực tiếp, mọi thứ đều được xây dựng mà không có sự cố. Tuy nhiên, đây không phải là giải pháp vì mục tiêu Xây dựng có thể thay đổi, vì vậy đường dẫn cũng sẽ thay đổi.

Mã của project.json:

{ 
    "version": "1.0.0-*", 

    "dependencies": { 

    }, 

    "frameworks": { 
    "net452": { 
    } 
    } 
} 

Đây có phải là một Studio lỗi Visual, hay tôi làm điều gì sai? Tôi đã thử sử dụng netstandard1.2, net452, nhưng kết quả vẫn giữ nguyên.

EDIT Tôi đã tạo sự cố trong kho lưu trữ .NET CLI Github. Đây là liên kết: https://github.com/dotnet/cli/issues/3926.

+0

bạn có làm ClassLibrary1 nhắm mục tiêu netstandard1.2 trong project.json của nó không? – enzian

+0

cùng một vấn đề với http://stackoverflow.com/questions/38148128/how-do-i-reference-a-net-framework-project-in-a-net-core-project?rq=1 này? – kurakura88

+0

@enzian Vâng, tôi đã thử mà không thành công. – gretro

Trả lời

1

Tôi gặp sự cố tương tự với Microsoft.NETCore 5.0.1 trong PCL. Nó thậm chí không tìm thấy System.Object.

Tôi đã thử hạ cấp xuống 5.0.0 và giải quyết nó cho tôi.

+0

Phân tích của bạn về vấn đề cơ bản là gì và đề xuất của bạn là giải pháp cho vấn đề này như thế nào? –

+0

Tôi sử dụng thư viện SAME và phiên bản hiện tại trên NuGet cho tôi vô số lỗi SIMILAR (không thể tìm thấy XYZ). Nó rõ ràng là bị hỏng. Hạ cấp giải quyết nó cho tôi. –

+0

Tôi không biết nguyên nhân gây ra lỗi nào (chúng không có ý nghĩa với tôi), cách tôi giải quyết chúng. Tôi có nên chia sẻ điều đó không? Tôi hoàn toàn mất đi những gì bạn mong đợi từ tôi. EDIT: Chắc chắn chỉ cần xóa những gì bạn đã viết. –

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