Hi,
I am new to linq and lamda expressions.
I have a set of class containing lists. I want to update the specific data as per the ids and labels.
For a reference, i am sending the classes.
public class Global
{
public string GlobalId { get; set; }
public string GlobalName { get; set; }
public IList<Area> Areas { get; set; }
}
public class Area
{
public string AreaId { get; set; }
public string AreaNam { get; set; }
public IList<Plot> Plots { get; set; }
}
public class Plot
{
public string PlotId { get; set; }
public string PlotName { get; set; }
}
public class Deal
{
public Global GetDetails()
{
Plot p1 = new Plot();
p1.PlotId = "1";
p1.PlotName = "P1";
Plot p2 = new Plot();
p2.PlotId = "2";
p2.PlotName = "p2";
Area area1 = new Area();
area1.AreaId = "1";
area1.AreaNam = "A1";
Area area2 = new Area();
area2.AreaId = "2";
area2.AreaNam = "A2";
IList<Plot> plots = new List<Plot>();
plots.Add(p1);
plots.Add(p2);
area1.Plots = plots;
area2.Plots = plots;
IList<Area> areas = new List<Area>();
areas.Add(area1);
areas.Add(area2);
Global global = new Global();
global.GlobalId = "1";
global.Areas = areas;
return global;
}
public Global UpdateDeal(string areaId, string plotId, Global globalList, string dealLavel, string nameToBeUpdated)
{
Global globals = globalList;
if (dealLavel == "plot")
{
}
if (dealLavel == "area")
{
}
return globals;
}
}
static void Main(string[] args)
{
Deal deal = new Deal();
Global globalData = deal.GetDetails();
// UpdateDeal(areaId, plotId, listOfGlobaldata, dealLavel, plotname)
Global updatedGlobals = deal.UpdateDeal("1", "2", globalData, "plot", "samplePlot");
}
Now, I want to update as per the below call.
Global updatedGlobals = deal.UpdateDeal("1", "2", globalData, "plot", "newPlotName");
here, I have to update PlotName having areaId = "1" and plotId = "2" with a new PlotName "samplePlot".
and return the updated list.
Can any linq or lamda expression expert help me in this ??
Thanks a lot.