C# 压缩不同大小的列表
清单2只显示了两个元素,但我需要4个元素 地址有4个元素 关联有2个元素 如果我在关联中再添加两个元素,我将自动获得4个元素C# 压缩不同大小的列表,c#,C#,清单2只显示了两个元素,但我需要4个元素 地址有4个元素 关联有2个元素 如果我在关联中再添加两个元素,我将自动获得4个元素 DT_createdRentalObject ro = new DT_createdRentalObject(); //Add Address List<Address> la = new List<Address>(); la.Add(new Add
DT_createdRentalObject ro = new DT_createdRentalObject();
//Add Address
List<Address> la = new List<Address>();
la.Add(new Address { City = "Arizona" });
la.Add(new Address { City = "Texas" });
la.Add(new Address { City = "California" });
la.Add(new Address { City = "Florida" });
ro.Address = la.ToArray();
//Add Association
List<Association> aso = new List<Association>();
aso.Add(new Association { AssociationType = "1" });
aso.Add(new Association { AssociationType = "2" });
ro.Association = aso.ToArray();
//Add LandData
List<LandData> landa = new List<LandData>();
landa.Add(new LandData { LandRegistrNumber = "12343" });
landa.Add(new LandData { LandRegistrNumber = "8737" });
landa.Add(new LandData { LandRegistrNumber = "2456" });
ro.LandData = landa.ToArray();
//Object
List<MasterDataObjectID> mdobid = new List<MasterDataObjectID>();
mdobid.Add(new MasterDataObjectID { IDType = "TYPID_212_12" });
//ObjectType
MasterData mdats = new MasterData();
mdats.ObjectType = "Flat";
mdats.ObjectID = mdobid.ToArray();
ro.MasterData = mdats;
var list =
ro.Address.Zip(ro.Association,
(add, asn) => new
{
ro.MasterData.ObjectID[0].IDType,
ro.MasterData.ObjectType,
add.City,
asn.AssociationType,
}
);
var list2 = list.Zip(ro.LandData, (ld, lan) => new
{
ld.AssociationType,
ld.City,
ld.IDType,
ld.ObjectType,
lan.LandRegistrNumber
});
DT_createdentalobject ro=new DT_createdentalobject();
//添加地址
List la=新列表();
添加(新地址{City=“Arizona”});
la.Add(新地址{City=“Texas”});
la.Add(新地址{City=“California”});
添加(新地址{City=“Florida”});
ro.Address=la.ToArray();
//添加关联
List aso=新列表();
Add(新关联{AssociationType=“1”});
Add(新关联{AssociationType=“2”});
ro.Association=aso.ToArray();
//添加土地数据
List landa=新列表();
添加(新的LandData{LandRegistrNumber=“12343”});
添加(新的LandData{LandRegistrNumber=“8737”});
添加(新的LandData{LandRegistrNumber=“2456”});
ro.LandData=landa.ToArray();
//反对
List mdobid=新列表();
Add(新的MasterDataObjectID{IDType=“TYPID_212_12”});
//对象类型
MasterData mdats=新的MasterData();
mdats.ObjectType=“平面”;
mdats.ObjectID=mdobid.ToArray();
ro.MasterData=mdats;
变量表=
ro.Address.Zip(ro.Association,
(添加,asn)=>新建
{
ro.MasterData.ObjectID[0]。IDType,
ro.MasterData.ObjectType,
加.城市,
asn.AssociationType,
}
);
var list2=list.Zip(ro.LandData,(ld,lan)=>new
{
ld.AssociationType,
劳埃德市,
ld.IDType,
ld.ObjectType,
lan.LandRegisterNumber
});
我不确定您遇到了什么问题。您能否提供更多信息,或者提供一个示例?地址、关联和土地数据之间的联系是什么?到目前为止,唯一的连接是列表中的索引,其他什么都没有。那么,带有“Florida”的地址应该如何连接到协会或LandData?你说的“如何自动完成”是什么意思?是否自动向关联添加两个以上元素?这些新的协会应该是什么样子?空对象?或者继续使用“3”和“4”关联类型?应用程序不知道如何“自动”实现这一点,因此您需要定义它。