0

我需要根据页面控件的名称选择实体对象。

有两种情况我需要基于字符串访问实体(我根据放置在页面上的用户控件的名称动态选择这些:

示例 1) - 在这里我想以某种方式将 db.PersonalDetails 更改为字符串替换,其中 db.PersonalDetails 是一个变量。

EntityObject obj = null;
obj = (from q in db.PersonalDetails where q.AppFormId==FormApplicationId select q).SingleOrDefault();

示例 2)在这里我想动态设置返回类型,在这种情况下它是 PersonalDetail 但我希望能够动态设置它。我可以使用反射来获取类型,但我不能说“as obj.GetType()”,因为它出错了。

EntityObject obj = null;
obj = returnUpdatedObj(obj) as PersonalDetail;

任何帮助将非常感激。我迫切希望找到解决方案,因此如果需要更多信息来解释该问题,请告诉我。

4

1 回答 1

0

对于 1) 你可以像我在这篇博文中所做的那样做。制作一个表达式树并使用该表达式树

context.Set<T>.Where(expression);

对于 2) 看起来你需要通用函数:

    private static T DoSomething<T>(T obj)
    {
        return obj;
    }
于 2012-05-15T13:26:19.130 回答