我在实体框架中的映射有问题。
我有以下课程(简化):
public class Building
{
public int ID { get; set; }
// *.. snip..* other properties
public Location Location { get; private set; }
}
public class Location
{
public string Street {get; set;}
public Country country {get; set}
}
public class Country
{
public int ID { get; set; }
public string Name { get; set; }
}
Building 和 Country 是实体,它们保存在数据库中。Location 是一个值类型,应该映射到与 Building 相同的表。
但是,当我以这种方式映射它时,实体框架也希望将位置映射到一个表并且抱怨它没有键。我不想给它钥匙,因为它属于大楼,根本不应该是一个实体。
我见过一些变通方法,说你需要把 Country 放在 Building 类上,但这感觉不太好(而且在语义上完全是错误的)。
我正在使用实体框架 5