c# - 该查询已被取消,因为此查询的估计成本 (27195) 超过了 SQL Server 2014 中配置的阈值 3000
问题描述
我正在使用 LINQ 查询来获取加入多个表的行,还使用 let 关键字来获取行列表以在显示列中显示多个值。这个 linq 查询有什么问题?
(from app in _dbContext.Appointments
join patient in _dbContext.Patients on app.PatientID equals patient.ID
join doc in _dbContext.Doctors on app.DoctorID equals doc.ID
join avail in _dbContext.DoctorsAvailabilities on app.AvailabilityID equals avail.ID
join loc in _dbContext.OfficeLocations on app.LocationID equals loc.ID
join state in _dbContext.CategoryDetails on loc.USState equals state.ItemID into StateGroup
from state in StateGroup.DefaultIfEmpty()
join appoint in _dbContext.CategoryDetails on app.Status equals appoint.ItemID into AppointmentStatusGroup
from appoint in AppointmentStatusGroup.DefaultIfEmpty()
let reasonVisit = (from v in _dbContext.DoctorAppointmentVisitReasons
join c in _dbContext.CategoryDetails on v.ReasonID equals c.ItemID
where c.CategoryID == CatergoryConstant.ReasonofVisit && v.AppointmentID == app.ID
select c.MasterData).ToList()
join appointmentSource in _dbContext.CategoryDetails on app.AppointmentSource equals appointmentSource.ItemID into AppointmentSourceGroup
from appointmentSource in AppointmentSourceGroup.DefaultIfEmpty()
let getReport = (from st in _dbContext.DoctorReportStatus
join cat in _dbContext.CategoryDetails on st.ReportStatus equals cat.ItemID
where st.StatusID == StatusConstant.Active && st.AppointmentID == app.ID
select new DoctorReportStatusViewModel() { ReportStatusText = cat.MasterData, ReportStatus = st.ReportStatus, AppointmentID = st.AppointmentID }).ToList()
let specility = (from s in _dbContext.DoctorSpecialities
join c in _dbContext.CategoryDetails on s.SpecialitiesID equals c.ItemID
where c.CategoryID == CatergoryConstant.DoctorSpeciality && s.DoctorID == doc.ID
select c.MasterData).ToList()
解决方案
推荐阅读
- shopify - 在不使用任何 shopify 应用程序的情况下对特定产品的客户特定折扣?
- android - 应用程序已在 android 模拟器中停止
- django - 如何从网页 URL http://dev.myapplication.io:8000 中删除端口 8000。我希望我的网址是 http://dev.myapplication.io
- element - 无容器自定义元素上的 Aurelia 自定义属性,未获取元素
- sql - 获取具有条件的关联记录数
- pandas - set_index 和 groupby 如何协同工作?
- docker - osixia/openldap SSL/TLS 问题
- python - 使用 OpenCV 和 Python 将图像的分割部分替换为其他图像
- xamarin.forms - OneSignal 通知扩展,错误找不到任何可用的配置文件
- swift - 在不使用 segue 的情况下向后传递数据?