सूची जोड़ना <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.