在 EF4 Vs2010 C# 上工作。有一个列表,它的类型是List。想要检索它的关系实体列表信息。在我的下图中 _entity是我的基本列表,这个列表关系实体名称是PurQuotationDetails。我想用值访问这个关系实体属性。
我使用下面的语法来访问关系实体。
foreach (PurQuotationMaster itemMaster in _entity)
{
foreach (var itemDetail in item.PurQuotationDetails)
{
}
}
不能使用上面的语法原因是,想写一个通用的语法,我只知道父实体类型,不知道关系实体类型。我使用以下语法来识别关系实体,但无法访问它的属性和值。帮助我检索它的值。
foreach (PurQuotationMaster item in _entity)
{
foreach (MemberInfo mi in item.GetType().GetMembers().Where((MemberInfo member) => member.MemberType == MemberTypes.Property))
{
if (mi.ToString().Contains("EntityCollection`1"))
{
var prop = item.GetType().GetProperty(mi.Name);
}
}
}
可能我需要使用RestrictedMemberAccess (RMA)来访问非公共成员。这个概念有点难以理解。需要帮助才能在上述情况下使用RMA 语法。
如果有任何疑问,请询问。任何类型的建议将不胜感激,帮助我编写语法以检索我想要的输出。在此先感谢。