0
로컬 데이터 저장을위한 SQLite 데이터베이스가있는 WPF 앱을 만들고 있습니다. NuGet에서 적절하게 구성된 App.config 파일에서 EntityFramework 6.1.3 및 System.Data.SQLite 1.0.105.1을 설치했습니다.WPF, SQLite 및 Lazy 로딩
이 나의 실체 나는 다음과 같은 코드를 실행하면
public class Event
{
public Guid Id { get; set; } = Guid.NewGuid();
public DateTime Date { get; set; }
public string Description { get; set; }
public virtual Guid ContractId { get; set; }
public virtual Contract Contract { get; set; }
}
public class Contract
{
public Guid Id { get; set; } = Guid.NewGuid();
[Required]
public string Code { get; set; }
public string Description { get; set; }
public virtual ICollection<Event> Events { get; set; }
}
, 나는이 System.NullReferenceException 예외가 있고, 나는 breakpoing를 넣으면, 내가 볼 수 계약E1 내 null
using (SqliteDbContext ctx = new SqliteDbContext())
{
var e1 = ctx.Events.FirstOrDefault();
MessageBox.Show(e1.Contract.Id.ToString());
}
감사합니다, 열망 로딩은 잘 작동하지만 내가 원하는 게으른 로딩을 사용하려면 ... – ssnake
명시 적으로 사용 중지하지 않는 한 명백히 SQLite에서는 지원되지 않습니다. http://www.entityframeworktutorial.net/EntityFramework4.3/lazy-loading-with-dbcontext.aspx. 또한 EF7은 탐색 속성의 지연로드를 지원하지 않습니다. https://docs.microsoft.com/en-us/ef/core/querying/related-data 따라서 열망하는로드가 여기에있는 유일한 선택 일 것입니다. – mm8
SQlite에서 지원되지 않습니까? 이 게시물에서 https://stackoverflow.com/questions/10458395/entity-framework-sqlite-and-lazy-loading SQLite가 지원하는 것 같습니다. – ssnake