指定类型的成员XX”不支持实体LINQ。只有初始化,成员单位,和实体导航性能的支持。

Posted 洛阳之晨,譬如临安初雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了指定类型的成员XX”不支持实体LINQ。只有初始化,成员单位,和实体导航性能的支持。相关的知识,希望对你有一定的参考价值。

The specified type member ‘DeleteFlag‘ is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported.

 

出现这个问题的原因是因为在linq中两个连接表创建的实体类需要吧其中的映射字段每一个都查出来,不然就会报这个错误,错误的写法如下

                var querySql = from t in _observationResultRepository.Table
                               join r in _observationRequestRepository.Table
                               on t.ObservationUID equals r.ObservationUID
                               select new RelatedLabResultInfo 
                               {
                                   ValueText=t.ValueText,
                                   ResultDate=r.ResultDate
                               };
  if (query.ClinicInfoType != null)
                {
                    querySql = querySql.Where(u => u.ClinicInfoType == query.ClinicInfoType.Value.ToString());
                }

这其中,tostringEF 不支持,需要写个中间变量赋值然后再放在EF中,

正确的写法:

                var querySql = from t in _observationResultRepository.Table
                               join r in _observationRequestRepository.Table
                               on t.ObservationUID equals r.ObservationUID
                               select new RelatedLabResultInfo 
                               {
                                   ValueText=t.ValueText,
                                   ResultDate=r.ResultDate,
                                   ClinicInfoType=r.ClinicInfoType
                               };

  if (query.ClinicInfoType != null) 
                {
                    ClinicInfoType = query.ClinicInfoType.Value.ToString();
                }

if (query.ClinicInfoType != null)
                {
                    querySql = querySql.Where(u => u.ClinicInfoType == ClinicInfoType);
                }

 

以上是关于指定类型的成员XX”不支持实体LINQ。只有初始化,成员单位,和实体导航性能的支持。的主要内容,如果未能解决你的问题,请参考以下文章

LINQ to Entities 异常中不支持指定的类型成员“日期”

LINQ to Entities 不支持指定的类型成员“日期”。 DbFunctions.TruncateTime()

如何修复 ApplicationUserManager 中的“LINQ to Entities 中不支持指定的类型成员‘UserId’”

Redis Stream类型的使用

在LINQ to Entities中不支持指定的类型成员'x'。只支持初始化器实体成员和实体导航属性。

Http响应处理