PDA

View Full Version : سوال: اندکسر ها و property ها



kh2003
چهارشنبه 04 اسفند 1389, 02:13 صبح
سلام دوستان عزیز میخواستم بدونم که چرا کدسنیپت های property با indexer ها متفاوته؟
property:

public int MyProperty { get; set; }

indexer:

public object this[int index]
{
get { /* return the specified index here */ }
set { /* set the specified index to value here */ }
}

ممنون میشم که اگه هرچه سریعتر بهم جواب بدین چون خیلی مهمه.
مرسی از همتون

Reza_Yarahmadi
چهارشنبه 04 اسفند 1389, 08:23 صبح
چون 2 مفهوم كاملا جدا هستند!!
پراپرتي براي دسترسي به يك آبجكت از كلاس مورد استفاده قرار ميگيره ولي در ايندكس ميشه به يخشي از يك آبجكت دسترسي داشت.
فرض كنيد توي كلاس يك Dictionary بصورت زير داريد

Dictionary<String, String> _myDic = new Dictionary<string, string>();
_myDic.Add("Key1", "Value1");
_myDic.Add("Key2", "Value2");
_myDic.Add("Key3", "Value3");
در حالت استفاده از ژراژرتي برايدسترسي به يك آيم از اين ديكشنري بايد بصورت زير عمل كنيد

public Dictionary<String, String> MyDic { get; set; }

obj.MyDic["Key1"] = "NewValue";
ولي در اينكدس بصورت زير

public String this[String key]
{
get { return _myDic[key]; }
set { _myDic[key] = value; }
}
obj["Key1"] = "NewValue";
در اين باره توي سايت مطالب تقريبا كاملي هست با يك جستجو به جوابهاي كاملتري ميرسيد