实体框架外键查询

时间:2010-10-27 20:13:50

标签: entity-framework foreign-keys entity

我的实体框架,对象和参数中有两个表,它们有一个指向它们所属对象的外键。我想用一个特定对象的所有属性填充一棵树。所以为了找到我想要做的人:

   String parentObject = "ParentObjectName";
   var getAttributes = (from o in myDB.ATTRIBUTE
                        where o.PARENT_OBJECT == parentObject
                        select o);

然而,当我尝试这样做时,我得到一个错误,说它无法从OBJECT类型转换为字符串,即使在数据库中该值存储为字符串。我有一个解决方法,我得到一个parentObject的实例,然后遍历每个属性并检查它是否是parent_object == parentObjectInstance,但这比仅执行1个查询效率低得多。任何帮助都会非常感谢,谢谢!

2 个答案:

答案 0 :(得分:2)

嗯,在{2}中无法调用PARENT_OBJECT.ToString()(隐式或显式),但如果它只返回一个属性,你可以直接看一下:

String parentObject = "ParentObjectName";
var getAttributes = (from o in myDB.ATTRIBUTE
                     where o.PARENT_OBJECT.NAME == parentObject
                     select o);

...请注意.NAME

答案 1 :(得分:0)

试试这个:

String parentObject = "ParentObjectName"; 
   var getAttributes = (from o in myDB.ATTRIBUTE 
                        where o.PARENT_OBJECT.ToString() == parentObject 
                        select o);