2015-08-18 16 views
5

Tôi hiện đang tạo một ứng dụng cần lưu trữ và lấy dữ liệu đến và từ cơ sở dữ liệu sqlite. Hai gói Nuget tôi hiện đang sử dụng là Sqlite PCLSQLite-Net Extensions.Sqlite One to Many Relationship

[Table("patient")] 
public class Patient 
{ 
[PrimaryKey] 
public string ID { get; set;} 

    public string FirstName { get; set; } 
    public string LastName { get; set; } 

    [OneToMany] 
    public List<PatientVitals> PatientVitals { get; set; } 
} 

[Table("patientVitals")] 
public class PatientVitals 
{ 
    [PrimaryKey] 
    public string VitalID {get;set;} 

    public string Weight { get; set;} 
    public string Height { get; set;} 

    [ForeignKey(typeof(Patient))] 
    public string SmartCardID {get;set;} 
} 

Toàn bộ điều được biên dịch tốt, nhưng khi tôi cố gắng để chạy các mô phỏng tôi nhận được tin nhắn này:

System.NotSupportedException đã được ném Không biết về System.Collections .Generic.List1

Tôi đã kiểm tra tiện ích mở rộng SQLite Net documentation và nó hỗ trợ Danh sách.

Có ai biết cách sửa lỗi này không?

+0

Không hoạt động, nhận được cùng một thư. Cảm ơn! – Fayt

+0

Tôi mỏng có một sửa chữa mà họ đang làm việc trên (hoặc làm việc) để khắc phục vấn đề Danh sách <>. [link] (https://bitbucket.org/twincoders/sqlite-net-extensions/pull-requests/12/support-ilist-instead-of-list-as-enclosed/diff#comment-8587796) – Roman

Trả lời

0

Vui lòng thêm khóa chính của bệnh nhân là khóa ngoại trong bảng PatientVitals.

+0

Đó là công chúng chuỗi SmartCardID. – Fayt

+0

Bạn phải thay đổi '[ForeignKey (typeof (PatientItem))] ' đến ' [ForeignKey (typeof (Patien))] ' –

0

Dù sao, sau một số nghiên cứu, hóa ra tôi phải loại bỏ tất cả các tài khoản có liên quan đến SQLite và cài đặt lại chúng vào dự án. Trong trường hợp của tôi, vì tôi cần phần mở rộng SQLite-Net, tôi chỉ cần đặt nó trong dự án của tôi và bất kỳ nudgets phụ thuộc nào cũng sẽ được cài đặt cùng với Tiện ích mở rộng SQL-Net.

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