2014-04-05 15 views
7

Tôi cố gắng để tạo Repository, Entity framework cho Portable Class Library, khi bao giờ tôi cố gắng NuGet EntityFrameworkEntity Framework cho Portable Class Library

nó được Không thêm tài liệu tham khảo để 'System.ComponentModel.DataAnnotations'. Hãy chắc chắn rằng nó đang ở trong Cache hội toàn cầu.

Bất kỳ ý tưởng để giải quyết này cho EF

Tương thích gói EF cho Thư viện di động

+0

có một vấn đề trong NuGet liên quan đến này http://nuget.codeplex.com/workitem/2978 –

+0

gói tương thích với Entity Framework Portable Thư viện là gì –

+0

tôi không có vấn đề với 6.1.0. Hãy rõ ràng về những mục tiêu bạn đã chọn khi bạn tạo dự án PCL của mình. –

Trả lời

3

EF7 có PCL, vì vậy nếu một quy hoạch nào để sử dụng PCL có thể sử dụng phiên bản đầu tiên của EF7 hoặc VS2014

+1

Bạn có thể chỉnh sửa câu trả lời của mình để trích dẫn nguồn "EF7 có PCL" không? –

+3

Nhưng Gói NuGet nào cần được cài đặt? Tôi đang cố gắng sử dụng EntityFramework.SQLite (Beta6), nhưng nó sẽ không cài đặt trong Thư viện PCL nhắm mục tiêu Windows8/.Net4.5 – ChrisTTian667

3

Trước Visual Studio Cập nhật 2 bạn có thể tạo một dự án PCL nhắm Net 4 hoặc Net 4.5 và Windows 8, mà sẽ cho phép bạn cài đặt gói nuget EntityFramework. Sau khi cập nhật này, bạn không thể nhắm mục tiêu Windows 8 mà không có Windows Phone 8.1 được nhắm mục tiêu tự động.

auto này nhắm mục tiêu của Windows Phone dường như để ngăn chặn thêm gói EF để PCL nhắm Windows 8.

4

Bạn có thể sử dụng Api thông thạo, không sử dụng chú thích dữ liệu và thuộc tính trong lớp mô hình.

Ví dụ: để xác định khóa chính; thay vì sử dụng [Key] thẻ, sử dụng:

protected override void OnModelCreating(DbModelBuilder modelBuilder) 
{ 
    base.OnModelCreating(modelBuilder); 
    modelBuilder.Entity<Record>().HasKey<int>(s => s.ID); 
}