我有一个:
class Garage {
int garageID;
ISet<Car> cars
}
汽车类应该将garageID作为其属性之一,如:
class Car {
int carID;
int garageID;
String name;
}
这就是它在数据库中出现的方式,但是想知道多方面的类是否应该将外键作为属性,或者ORM是否只是在执行SQL时添加了该类(假设您可以在其中指定它)映射文件)。
答案 0 :(得分:1)
简而言之:不行(是的,ORM将根据您的映射文件处理FK)
“Car”表中将包含GarageId,但您不应将其添加到Car类。
你可以具有双向关系(尽管对于这些是否是个好主意,意见各不相同)。
双向关系会使Car类看起来像这样:
public class Car {
public virtual int Id {get; set;}
public virtual Garage Garage {get; set;} //You can traverse back up to Garage
public virtual string Name {get; set;}
}
如果您希望我发布Fluent / XML地图,请告诉我。