【发布时间】:2019-09-26 16:19:15
【问题描述】:
我需要从字符串中动态获取实体对象值。 像这样:
string s = "UserMaster";
string param = "MyUser";
object o = database.s.Find(param);
//I need o to become like object o = db.UserMaster.Find(MyUser);
抱歉,如果已经有执行此操作的功能,我不知道名称。 谢谢你的指导:)
编辑: 好的,这是更大的图景:
string myString = "Hi my name is [UserMaster.Name] and my school is [SchoolMaster.SchoolName]";
假设我得到了字符串“[UserMaster.Name]”和“[SchoolMaster.SchoolName]”, UserMaster 和 SchoolMaster 是一个实体名称。 UserMaster 具有“Name”属性,SchoolMaster 具有“SchoolName”属性。 我需要将“[UserMaster.Name]”转换为它的值,比如说“MyName” 和“SchoolMaster.SchoolName”到“MySchoolName”。
【问题讨论】:
-
Find()方法通过主键查找对象,所以如果param是key,就可以使用
-
这对我来说听起来像是一个 XY 问题。假设你得到这个工作并且你的对象
o包含s指定的任何类型,你打算如何使用它? -
问题是 DataEntity 不包含 's' 的定义,因为 's' 是字符串而不是实体对象。
-
这会有什么用?给我们一个大图景,你想通过传递字符串值做什么?
标签: c# entity-framework-6