我正在研究WCF,实体框架,自我跟踪解决方案。

我对ESQL有问题。

string cmd = "Select h.achAccId, p.patDOBirth, p.patGender from PatientEntities.AccBases as a, PatientEntities.AccHosps as h, PatientEntities.Patients as p Where h.achAccID = 57348 and p.patPatId = a.acbPatId and h.achAccId = a.acbAccId";


ObjectQuery<dbdatarecord>queryResult = null;

using (PatientEntities db = new PatientEntities()) PatientEntities is ObjectContext
{
    `queryResult = db.CreateQuery<dbdatarecord>(cmd);`
}

if ((queryResult != null) && (queryResult.Count() > 0))
{
    `...`
}


queryResult.Count()导致错误:“'achAccID'在当前加载的架构中不是'PatientModel.AccHosp'类型的成员”

我在PatientModel.edmx文件下找到了,在<EntityType Name="AccHosp">下有<property Name="achAccID" Nullable="false" Type="int">

那么真正的问题是什么?

最佳答案

ESQL没问题。数据上下文需要刷新。即。 db.Refresh(RefreshMode.StoreWins,db.AccHosps);

关于c# - ESQL不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15284093/

10-10 13:45