MVC Group Join - Returns duplicate values in View

  • Thread starter Thread starter Zain Nabi
  • Start date Start date
Z

Zain Nabi

Guest
Greetings

I trust you are well. Could anybody possibly assist with linq group join into viewmodel. For some strange reason my list returns duplicates even though I have utilized the Distinct() method at the end of controller.

I have used the Guid class to create a relationship between 2 objects. When the view is rendered, duplicates show up. Could someone please assist.

Thanks

[HttpGet]
public ActionResult ClientAADetails(string ClientId)
{

var query = (from z in db.ClientFileUploaded
join x in db.WorkingPaperAAs on z.ClientId equals x.ClientId
where x.ClientId == ClientId
select new ClientAADetails()
{
Id = x.Id,
ClientId = x.ClientId,
ClientName = x.ClientName,
ClientIDnumber = x.ClientIDnumber,
MaritalRegime = x.MaritalRegime,
EstateLate = x.EstateLate,
PreparedBy = x.PreparedBy,
PreparedByDate = x.PreparedByDate,
ReviewedBy = x.ReviewedBy,
ReviewedByDate = x.ReviewedByDate,

HusbandName = x.HusbandName,
HusbandAmount = x.HusbandAmount,
HusbandInterest = x.HusbandInterest,
HusbandComments = x.HusbandComments,

HusbandName1 = x.HusbandName1,
HusbandAmount2 = x.HusbandAmount2,
HusbandInterest3 = x.HusbandInterest3,
HusbandComments4 = x.HusbandComments4,

HusbandName5 = x.HusbandName5,
HusbandAmount6 = x.HusbandAmount6,
HusbandInterest7 = x.HusbandInterest7,
HusbandComments8 = x.HusbandComments8,

HusbandName9 = x.HusbandName9,
HusbandAmount10 = x.HusbandAmount10,
HusbandInterest11 = x.HusbandInterest11,
HusbandComments12 = x.HusbandComments12,

WifeName = x.WifeName,
WifeAmount = x.WifeAmount,
WifeInterest = x.WifeInterest,
WifeComments = x.WifeComments,

WifeName1 = x.WifeName1,
WifeAmount2 = x.WifeAmount2,
WifeInterest3 = x.WifeInterest3,
WifeComments4 = x.WifeComments4,

WifeName5 = x.WifeName5,
WifeAmount6 = x.WifeAmount6,
WifeInterest7 = x.WifeInterest7,
WifeComments8 = x.WifeComments8,

WifeName9 = x.WifeName9,
WifeAmount10 = x.WifeAmount10,
WifeInterest11 = x.WifeInterest11,
WifeComments12 = x.WifeComments12,

TotalAmount = x.TotalAmount,

DetailedscheduleofaccountsReceived = x.DetailedscheduleofaccountsReceived,
DebtorsconfirmationofbalancesReceived = x.DebtorsconfirmationofbalancesReceived,
DebtorsstatementsReceived = x.DebtorsstatementsReceived,

DetailedscheduleofaccountsComments = x.DetailedscheduleofaccountsComments,
DebtorsconfirmationofbalancesComments = x.DebtorsconfirmationofbalancesComments,
DebtorsstatementsComments = x.DebtorsstatementsComments,

Obtainscheduleofdebtorswithnamesaddressrepaymentterms = x.Obtainscheduleofdebtorswithnamesaddressrepaymentterms,
Obtainwrittenconfirmationfromdebtorofamountowing = x.Obtainwrittenconfirmationfromdebtorofamountowing,
Ensurethatschedulesignedbyexecutor = x.Ensurethatschedulesignedbyexecutor,

WorkingPaper1 = x.WorkingPaper1,
WorkingPaper2 = x.WorkingPaper2,
WorkingPaper3 = x.WorkingPaper3,

Signature1 = x.Signature1,
Signature2 = x.Signature2,
Signature3 = x.Signature3,

Date1 = x.Date1,
Date2 = x.Date2,
Date3 = x.Date3,

Comment1 = x.Comment1,
Comment2 = x.Comment2,
Comment3 = x.Comment3,

FileId = z.Id,
File = z.File,
FileName = z.FileName,
File2 = z.File2,
FileName2 = z.FileName2,
File3 = z.File3,
FileName3 = z.FileName3,
File4 = z.File4,
FileName4 = z.FileName4,
File5 = z.File5,
FileName5 = z.FileName5,
File6 = z.File6,
FileName6 = z.FileName6,
File7 = z.File7,
FileName7 = z.FileName7,
File8 = z.File8,
FileName8 = z.FileName8

}).Distinct();

if (query == null)
{
return View("Notfound");
}

var data = db.WorkingPaperAAs.Where(d => d.ClientId == ClientId);
double? HusbandSum1 = data.Sum(d => d.TotalAmount);

var regime = (from x in db.NewEstates
where x.ClientId == ClientId
select x.Marital_Regime).FirstOrDefault();

var status = (from z in db.NewEstates
where z.ClientId == ClientId
select z.Marital_Status).FirstOrDefault();

var fname = (from c in db.NewEstates
where c.ClientId == ClientId
select c.FirstName).FirstOrDefault();

var sname = (from c in db.NewEstates
where c.ClientId == ClientId
select c.Surname).FirstOrDefault();

string fullname = string.Concat(fname, " ", sname);

ViewBag.abc = fullname;

ViewBag.status = status;

ViewBag.regime = regime;

ViewBag.v = HusbandSum1;

return View(query.Distinct());
}

Continue reading...
 
Back
Top