का उपयोग कर मैं निम्नलिखित कोड है जो काम नहीं कर रहा है का मिलान:एक समूहीकृत संग्रह AutoMapper
var groupedZones = this._zoneDataManager.GetZonesGroupedByCountry();
IEnumerable<IGrouping<String, ZoneDTO>> zonesToReturn = Mapper.Map<IEnumerable<IGrouping<String, Zone>>, IEnumerable<IGrouping<String, ZoneDTO>>>(groupedZones);
मैं निम्न अपवाद बार आ रही है:
\ "System.Collections.Generic मूल्य । सूची
1[SCGRE.Business.Model.ZoneDTO]\" is not of type \"System.Linq.IGrouping
2 [System.String, SCGRE.Business.Model.ZoneDTO] \ " और इस सामान्य संग्रह में नहीं किया जा सकता \ r \ nParameter नाम:। मूल्य
मुझे समझ नहीं नहीं क्यों यह शायद मैं अपवाद ठीक से समझ में नहीं आया एक IGrouping<String, T>
में एक List<T>
मैप करने के लिए कोशिश कर रहा है या ... लेकिन मैं मूल रूप से एक IEnumerable<IGrouping<String, Zone>>
है और मैं करने के लिए IEnumerable<IGrouping<String, ZoneDTO>>
नोट यह मैप करना चाहते हैं कि मैं इस प्रकार ZoneDTO
करने के लिए Zone
से कोई नक्शा बना लेते:
Mapper.CreateMap<Zone, ZoneDTO>();
और उस वजह से दोनों वर्गों लगभग ठीक उसी गुण होते हैं है।
कोई विचार? (केवल Generic
प्रकार)
IEnumerable, IEnumerable<T>, ICollection, ICollection<T>, IList, IList<T>, List<T>, Arrays
AutoMapper करेंगे:
मैंने इसे सरल बना दिया है और कुछ यूनिट परीक्षण चलाए हैं, और दुर्भाग्य से ऐसा लगता है कि IGrouping वर्तमान में समर्थित नहीं है। यदि आपको यहां से कोई समाधान नहीं मिलता है, तो आप [ऑटोमैपर मेलिंग सूची] (https://groups.google.com/forum/?fromgroups#!forum/automapper-users) – Mightymuke