Возвращенные дубликаты записей Linq
Однако, на мой взгляд, в моей базе данных нет дубликатов записей. Он показывает дубликаты. ClientId-это Guid, который передается каждой таблице в соединении.
Пожалуйста помочь
Что я уже пробовал:
<pre> public ActionResult ClientInfo(string ClientId) { var query = (from x in db.FinancialNeedsClients join y in db.FinancialSpouseDetailss on x.ClientId equals y.ClientId join z in db.FinancialSpouseDetailss on x.ClientId equals z.ClientId join c in db.FinancialNeedsChildrens on x.ClientId equals c.ClientId join d in db.FinancialNeedDependentss on x.ClientId equals d.ClientId join e in db.FinancialNeedContactDetailss on x.ClientId equals e.ClientId where x.ClientId == ClientId select new FinancialNeedClientInfoViewModel() { Id = x.Id, ClientId = x.ClientId, Surnname = x.Surnname, FirstName = x.FirstName, IDNumber = x.IDNumber, DOB = x.DOB, Age = (int?)x.Age ?? 0, Nationality = x.Nationality, Occupation = x.Occupation, TaxRef = x.TaxRef, EmailAddress = x.EmailAddress, ContactNumber = x.ContactNumber, MaritaStatus = x.MaritaStatus, MaritalRegime = x.MaritalRegime, YearOfMarriage = x.YearOfMarriage, IfOther = x.IfOther, SpouseId = (int?)y.Id ?? 0, SpouseSurnname = y.Surnname, SpouseFirstName = y.FirstName, SpouseIDNumber = y.IDNumber, SpouseDOB = y.DOB, SpouseAge = (int?)y.Age ?? 0, SpouseNationality = y.Nationality, SpouseOccupation = y.Occupation, SpouseTaxRef = y.TaxRef, SpouseEmailAddress = y.EmailAddress, SpouseContactNumber = y.ContactNumber, ChildId = (int?)c.Id ?? 0, ChildrenFIrst_Name = c.FIrst_Name, ChildrenGender = c.Gender, ChildrenAge = (int?)c.Age ?? 0, ChildrenOccupation = c.Occupation, ChildrenDOB = c.DOB, DepId = (int?)d.Id ?? 0, DepdendentFIrst_Name = d.FIrst_Name, DepdendentAge = (int?)d.Age ?? 0, DepdendentRelationship = d.Relationship, ContactId = (int?)e.Id ?? 0, MainMemberResedentialAddress = e.ResedentialAddress, MainMemberPostalAddress = e.PostalAddress, MainMemberBusinessAddress = e.BusinessAddress, MainMemberMobileNumber = e.MobileNumber }).Distinct().ToList();
pankajupadhyay29
Попробуйте получить запрос БД с помощью профилировщика и посмотреть, не возвращает ли он дубликаты записей. Это указывает на то, что существует отношение "один ко многим", которое возвращает несколько записей.
Zain Nabi
Как мне получить запрос к БД..
Maciej Los
Вы можете использовать Помощью linqpad ;)
Gerry Schmitz
Почему вы дважды присоединяетесь к "SpouseDetails"? Неужели это двоеженцы?
Zain Nabi
Привет я удалил один spouseDetails из соединения но запрос все еще выбрасывает дубликаты