2
嗨,我看了看,只看到数组中的例子列出\集合,但没有其他方式。从一个集合到一个数组的映射
我有一个属性为AccIndex
的集合,我想映射到 数组,其名称为AccIndex
。
我试过如下:
Mapper.CreateMap<AccountCollection, AcctArray[]>().
ForMember(d=> d.AccIndex,
o=>MapFrom(s => s.AcctList.Select(c => c.AccIndex).ToArray()));
这让我空,并与toArray
我觉得这只会让一切慢(指定者比再次打破它)。
是不是有一个简单的方法来映射两者?唯一的区别是一个是集合和另一个数组,但不知何故,我在谷歌上找不到任何东西。
一些更多的东西,我想,总是导致许多空值:
Mapper.CreateMap<AccountCollection,
AcctArray>();
Mapper.Map(AcctIndexesList, newIndexesArray);
Mapper.CreateMap<AccountCollection,
AcctArray[]>();
Mapper.Map(AcctIndexesList, newIndexesArray2);
我被要求出示收集和阵列怎么看起来像这样:
public class AccountCollection: IList, ICollection, IList<AcctIndexes>,
ICollection<AcctIndexes>, IEnumerable<AcctIndexes>, IEnumerable {
public AcctIndexesCollection();
public virtual int Count { get; }
public int Rows { get; set; }
public virtual AcctIndexes this[int index] { get; set; }
public virtual int Add(AcctIndexes value);
...
}
public class AcctIndexes : IFormattable
{
public bool AccIndexSpecified;
public AcctIndexes();
public int AccIndex { get; set; }
}
和这些数组:
public partial class AcctArray {
private int accIndexField;
public int AccIndex
{
get {
return this.accIndexField;
}
set {
this.accIndexField = value;
}
}
}
感谢
请使用正确的格式。 –
** System.LINQ **命名空间包含一个扩展方法'List ToList(此IEnumerable 源)',它可用于* ICollection *的所有实现,因为它扩展了* IEnumerable *。这有帮助: –
显示你的'AccountCollection'和'AcctArray'类。 –