के इनलाइन प्रारंभिकरण के माध्यम से किसी शब्दकोश में मूल्य जोड़ना मेरे पास निम्नलिखित City
कक्षा है। प्रत्येक शहर वस्तु में एक शब्दकोश होता है जो कुंजी भाषा टैग होते हैं (मान लें: "एन", "डीई", "एफआर" ...) और संबंधित मूल्यों में शहर के नाम कौन से मूल्य हैं (उदा: रोम/रोम इत्यादि) ।अपने कंटेनर
public City(string cityName)
{
this.LocalizedNames.Add("EN", cityName);
}
यहाँ सवाल आता है::
public class City:
{
private IDictionary<string, string> localizedNames = new Dictionary<string, string>(0);
public virtual IDictionary<string, string> Names
{
get { return localizedNames ; }
set { localizedNames = value; }
}
}
शहरों में से अधिकांश वही नाम हैं जो कुछ भी भाषा तो City
निर्माता वास्तव में अंग्रेजी मानचित्रण बनाता है है वहाँ जोड़ने के लिए एक रास्ता है इनलाइन प्रारंभिकरण के माध्यम से अन्य मूल्य?
मैं का अर्थ सफलता के बिना निम्नलिखित (संकलन नहीं करता है) विभिन्न रूपों की कोशिश की:
AllCities.Add(new City("Rome") { Names["DE"] = "Rom" };
मैं भी एक नया शब्दकोश बनाने की कोशिश की है, लेकिन इस स्पष्ट रूप से "एन" पैरामीटर अधिलेखित कर देता है:
AllCities.Add(new City("Rome") { Names = new Dictionary<string, string>() { { "DE", "Rom" } } };
कोई भी जानता है कि यह संभव है?
ध्यान दें: * निर्माता प्रारंभ * नहीं उचित शब्दावली है। सोचें ** ऑब्जेक्ट ** और ** संग्रह ** प्रारंभिकरण, इनमें से कोई भी कन्स्ट्रक्टर के माध्यम से नहीं किया जाता है। –
आप सही हैं, मैंने शीर्षक संपादित किया है, धन्यवाद –