सूची जोड़ना <t> .add () दूसरी सूची


134

मेरे पास एक है IEnumerable<TravelDetails>और मैं -loop में forवेल को जोड़ने की कोशिश कर रहा हूं List<TravelDetails>। मुझे त्रुटियाँ मिलती रहती हैं।

त्रुटि 15 तर्क 1: 'System.Collections.Generic.List' से 'TrafficCore.DataObjects.TripDetails' C: \ TrafficNew \ TI 511-Web \ Traffic 2.0 / 511Traffic \ 511Traffic \ Model \ DrivingTime.cs में परिवर्तित नहीं हो सकता

मेरा कोड है

List<TripDetails> tripDetailsCollection = new List<TripDetails>();
foreach (DrivingTimeRoute dtr in dtRoutes)
{
    foreach (Trip trip in dtr.Trips)
    {
        foreach (TripPathLink tpl in trip.TripPathLinks)
        {
            tplCollection.Add(tpl);
        }
        IEnumerable<TripDetails> tripDetails = //long Linq-to-Sql here
        List<TripDetails> td = tripDetails.ToList();
        tripDetailsCollection.Add(td); // <<< Error here
    }
}

क्या कोई इस में मेरी मदद कर सकता है।
धन्यवाद, पवन


क्या आप बता सकते हैं कि त्रुटि किस रेखा पर है?
आर। मार्टिनो फर्नांडीस

संभावित सूची का डुप्लिकेट डुप्लिकेट एक सूची सूची में शामिल सी #
माइकल फ्रीजिम

जवाबों:


269

List<T>.Addएक एकल तत्व जोड़ता है। इसके बजाय, List<T>.AddRangeकई मान जोड़ने के लिए उपयोग करें।

इसके अतिरिक्त, List<T>.AddRangeएक लेता है IEnumerable<T>, तो आप tripDetailsएक में बदलने की जरूरत नहीं है List<TripDetails>, आप इसे सीधे पारित कर सकते हैं, जैसे:

tripDetailsCollection.AddRange(tripDetails);
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.