1

私は2つのクラスを持っています.1つはDestinationsで、もう1つはDestinationDetailsです

public class Destinations
{
    public Destinations() { }

    public string CarrierName { get; set; }

    public List<DestinationDetails> Details { get; set; }
}

public class DestinationDetails
{
    public DestinationDetails() { }

    public string Destination { get; set; }

    public string Type { get; set; }

}

string "Destination"最初のクラスのオブジェクトのリストから 2 番目のクラスのすべてを取得したい

ステートメントを使用していますがList<Destinations>、使用したくありませんfor loop or foreach

4

3 に答える 3

1
var dest = new Destinations();

//Initialize the details

var destNames = dest.Details.Select(d => d.Destination).ToList();
于 2013-04-14T03:51:05.730 に答える
1

このようなものをお探しですか?

     var det = new Destinations();
     det.Details = new List<DestinationDetails>();
      det.Details.Add(new DestinationDetails() { Destination = "CA" });
      det.Details.Add(new DestinationDetails() { Destination = "NJ" });
      ...
      ...
     var details = new DestinationDetails();
     details.Destination = string.Join(",",det.Details.Select(x => x.Destination).ToArray() );

アップデート:-

宛先「allDet」のリストが提供されている場合、以下のように文字列のリストを取得できます:-

  alldet.Where(x => x.Details != null).SelectMany(x => x.Details.Select(y => y.Destination)).ToList() //With out ToList() it will give you IEnumerable<String>
于 2013-04-14T03:53:33.423 に答える