간단한 클래스에 문제가 있습니다. 내 클래스의 한 속성은 다른 클래스에 대한 참조이지만, 읽을 때 항상 null입니다.Entity Framework 코드 첫째 : 참조 된 개체를로드하지 않습니다.
public class Product
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public String Description { get; set; }
public virtual Trademark Trademark { get; set; }
}
public class Trademark
{
public int TrademarkId { get; set; }
public String Description { get; set; }
}
이들은 매우 간단합니다. 은 그 때 나는 첫 번째 요소 얻을 때 :
Product p = context.Products.First();
그리고 p
이 올바른 제품을 포함, 그러나 상표는 null입니다.
내가 좋아하는, LINQ를 사용하여 쿼리를 수행 할 경우에도 : 데이터베이스가 좋아 생성
var prods = context.Products.Where(p => p.Trademark.TrademarkId == 1).ToList();
.
SQLSERVER 컴팩트 에디션, 어떤 제안 4.0
감사 EF 4.3.1을 사용.
추가 :이 내 상황에 맞는 클래스 :
public class HPContext : DbContext
{
public HPContext()
: base()
{
this.Configuration.LazyLoadingEnabled = false; //Just for test
}
public DbSet<Product> Products { get; set; }
public DbSet<Trademark> Trademarks { get; set; }
}
추가 : 데이터베이스 스키마
Table:
Products
Fields:
Id int primaryKey
Description nvarchar(4000)
Trademark_TrademarkId int
Table:
Trademarks
Fields:
TrademarkId int PrimaryKey
Description nvarchar(4000)
데이터베이스 스키마를 제공 할 수 있습니까? 분명히 협회에 문제가 있습니다 ... – Dennis
좋아, 자택에 1 시간 안에 데이터베이스를 게시 하겠지만, 데이터베이스는 ef로 생성됩니다. – Gabriel
내 컴퓨터에 로그인하여 스키마를 가져올 수 있습니다. – Gabriel