我有两个列表<>。但是,每个列表都包含两个不同的对象。我需要在不同列表的两个对象内创建一个快乐的对象。如何用两个不同的列表创建独特的对象?
List1: List <Regions> reg
List2: List <Museums> mus
Object example: object NewObject <reg, mus>
是否有可能? 然后我带来了新的一页
我有两个列表<>。但是,每个列表都包含两个不同的对象。我需要在不同列表的两个对象内创建一个快乐的对象。如何用两个不同的列表创建独特的对象?
List1: List <Regions> reg
List2: List <Museums> mus
Object example: object NewObject <reg, mus>
是否有可能? 然后我带来了新的一页
您可以创建一个自定义对象,具有两个属性:
public RegionsMuseums
{
public List<Regions> Regions {get;set;}
public List<Museums> Museums { get;set;}
public RegionsMuseums(List<Regions> regions, List<Museums> museums)
{
Regions = reg;
Museums = mu;
}
}
然后,你可以创建这个对象的实例:
var obj = new RegionsMuseums(reg, mus);
其中reg
和mus
分别是你的地区和博物馆名单。
是创建对象,你可以使用一个元组
reg.Zip(mus, (r,m) => Tuple.Create(r,m)).ToList();
您可以创建复合包装对象,要么使用object initializer syntax或提供一个构造函数的两个集合为参数。
public class CompoundObject
{
public List<Regions> Regions { get; set; }
public List<Museums> Museums { get; set; }
}
var example = new CompoundObject { Regions = reg, Museums = mus };
OR
public class CompoundObject
{
public List<Regions> Regions { get; set; }
public List<Museums> Museums { get; set; }
public CompoundObject(List<Regions> regions, List<Museums> museums)
{
Regions = regions;
Museums = Museums;
}
}
var example = new CompoundObject(reg, mus);
非常干净,假设“OP”知道如何理解,@Christos同样好,也是有效的 – MethodMan 2015-02-06 20:17:24