class A
{
   public string name;
}
class B
{public B(A a)
{
   name=a.name;
}public string name;
}var listA = getlistA();
//如何简洁的代码  转换为listB类似这样  var listB = new list<B(...)>();

解决方案 »

  1.   

    用LINQ就可以,好似是select new B(a) 吧,具体语法百度一下
      

  2.   

    var listB = listA.ConvertAll<B>(new Converter<A,B>((a) => { return new B(a);}));
      

  3.   

    这个没办法,他们谁也不认识谁来着所以你只好new了var listA = getlistA();listB=listA.Select(p=>new B(p)).ToList()
      

  4.   

    from p in lista 
    select new B
    {
    name=p.name
    }.tolist<B>();
      

  5.   

                var listb = la.Select<A, B>(new Func<A,B>(a=>new B(a))).ToList();            var listb = (from a in la select new B(a)).ToList();