بسیار خب.
پس بیایید با **Dictionary**هامون اینجا ادامه بدیم.
خب در ویدیوی قبل ما آیتم‌هایی رو به **Dictionary**مون اضافه کردیم. دیدیم چطور می‌تونیم به آیتم‌ها دسترسی پیدا کنیم. و مسلماً دیدیم چطور یک **Dictionary** رو اعلان کنیم.
حالا بیایید ببینیم چطور می‌تونیم داده‌ها رو داخل یک **Dictionary** **Update** کنیم.
بنابراین من قراره از **Employees** و بعد **Key** داخل براکت‌های مربعی استفاده کنم.
پس مثلاً در **102** می‌خوام **Bob Smith** رو با **Jane Smith** جایگزین کنم، باشه.
پس این نحوه **Update** کردن داده‌ها در یک **Dictionary** هست.
حالا چیزی که اینجا مهمه اینه که این فقط کار می‌کنه چون ما گفتیم که **Key** از نوع **int** هست.
اگه **Key** از نوع دیگه‌ای بود، باید هر نوعی که برای **Key** هست که می‌خوایم تغییر بدیم رو وارد می‌کردیم.
این رو کمی بعد با **String**ها خواهیم دید.
باشه.
اما فعلاً می‌خوام فقط با **Integer**های خیلی ساده از روش بگذرم.
حالا چطور می‌تونم یک آیتم رو از **Dictionary**م حذف کنم؟
بنابراین می‌تونم از **employees.** استفاده کنم و همونطور که می‌بینید کلی متد وجود داره. پس می‌تونید چیزی اضافه کنید، می‌تونید چیزی حذف کنید. و کلی گزینه‌های دیگه وجود داره که در دسترس داریم.
پس بیایید فقط از متد **Remove** اینجا استفاده کنیم.
و حالا اینجا داخل پرانتز باید نشون بدیم که در کدوم **Key** می‌خوایم چیزی رو حذف کنیم. حالا نمی‌تونیم از یک اینجا استفاده کنیم چون در **Key 1** چیزی وجود نداره.
فقط در **101** یا **102** چیزی هست چون اونجاست که **Employee**هامون رو اضافه کردیم. پس در این **Key**ها ما **Employee**هامون رو اضافه کردیم.
پس فقط می‌تونم اون‌ها رو در **Key**هایی که در دسترس داریم، حذف کنم.
پس این **101** رو حذف می‌کنه.
حالا بیایید فقط چند **Employee** دیگه اضافه کنیم چون در غیر این صورت فقط با یک **Employee** اونجا می‌مونیم.
پس من قراره چند **Key** دیگه اینجا استفاده کنم. پس **Bob Smith**، **Rob Smith**، **Flop Smith** و **Bob Smith** خواهد بود.
باشه، کلی آدم فامیل **Smith** که همه‌شون با **Bob** تموم می‌شن حتی اگه اون اسم‌ها وجود نداشته باشن.
اما بعد ما **Jane Smith** رو داریم که برای دوستمون **Bob Smith** **Update** کردیم. اما حالا حداقل چند آیتم داریم.
و بعد از حذف یکی. پس این نحوه حذف یک آیتم از یک **Dictionary** هست.
حالا چطور می‌تونیم از طریق تمام آیتم‌های اون **Dictionary** بریم؟ چطور می‌تونیم از طریق همه‌شون پیمایش کنیم؟
بنابراین می‌تونیم از یک حلقه **For Each** استفاده کنیم.
پس حلقه **For Each** وقتی نوبت به استفاده از **Dictionary**ها می‌رسه کمی پیچیده‌تره.
پس ما باید از **KeyValuePair** در **Employees** استفاده کنیم.
خب این **KeyValuePair** چیه.
خب اون هم داخل **System.Collections.Generic** هست. اون یک **Struct** هست.
کمی بعد خواهیم دید که **Struct**ها چی هستند.
اما اون یک جفت **Key-Value** رو تعریف می‌کنه که می‌تونه تنظیم یا بازیابی بشه. حالا این فقط یک **Dictionary** خیلی ساده هست.
می‌تونید بگید مثل یک **Dictionary** ساده‌شده.
و ما فقط **int** و **string** رو به عنوان دو **Data Type** می‌گیم. پس **int** به عنوان **Key** و **string** به عنوان **Value**. پس این چیزیه که این **KeyValuePair** ازش میاد.
و فقط اون رو **kvp** در **Dictionary** ما می‌نامیم. پس اینطوری حالا می‌تونیم از طریق هر آیتم تکی بریم.
پس هر آیتم تکی داخل **Employees** یک جفت **Key-Value** خواهد بود. پس یک **KVP** خواهد بود.
حالا می‌تونیم جلو بریم و از **Console.WriteLine** استفاده کنیم تا به هر **KVP** تکی نگاه کنیم. با این حال **KVP** یک نام عالی نیست، درسته.
پس بیایید فقط اون رو **Employee** بنامیم. تا کمی خواناتر باشه.
پس برای هر **Employee** می‌خوام **ID** **Employee** که **int** ما هست رو داشته باشم. پس قراره از **employee.** استفاده کنم. و می‌بینید ما **Value** و **Key** رو داریم.
پس ما این دو **Property** رو داریم که هر جفت **Key-Value** در دسترس داره.
پس من قراره بگم **ID** باید **Key** باشه و **Name** باید **employee.Value** باشه، باشه. چون اینطوری داریم اون رو ذخیره می‌کنیم، درسته.
ما داریم **Employee** رو در **Key** با **Value** ذخیره می‌کنیم. پس با **Name** داخل **Dictionary**مون.
پس این حلقه **For Each** از طریق همه اون آیتم‌ها خواهد رفت.
پس این **John Doe** از قبل هست.
پس می‌تونیم از شر این خط اینجا خلاص بشیم.
حالا بیایید این رو دوباره اجرا کنیم و خواهیم دید. ما **Jane Smith**، **Rob Smith**، **Lob Smith** و **Bob Smith** رو داریم، همگی در **ID**های مجزا.
پس در **102** ما **Jane** رو داریم، در **103** ما **Rob** رو داریم، در **104** ما **Flop** رو داریم و الی آخر.
حالا می‌بینید ما دیگه **John Doe** رو نداریم چون اون رو در این خط اینجا در خط 26 حذف کردیم. اونجاست که ما یک آیتم رو از **Dictionary** حذف کردیم.
و با این حلقه **For Each**، اینطوری از طریق **Dictionary** پیمایش کردیم. پس **Iterating Over a Dictionary** (پیمایش روی یک دیکشنری)، باشه.
پس این نقطه شروع برای **Dictionary**هامون خواهد بود.
حالا چند چیز هست که باید بهشون نگاه کنیم قبل از اینکه به مثال دیگه‌ای از **Dictionary**ها نگاه کنیم که در اون قراره از یک **String Key** با یک **Value** استفاده کنیم که اون هم از یک **Data Type** دیگه خواهد بود.
پس برای این ویدیو کافیه.
در ویدیوی بعدی می‌بینمتون.