سلام
نیازی نیست مقادیر واکشی شده از بانک اطلاعاتی که در متغیر data قرار دادی رو مجددا در یک List دیگه ذخیره کنید. حلقه را روی لیست data اجرا کن و مقدار مورد نظر را بروزرسانی کن و بعد ذخیره کن. کد رو میتونید به شکل زیر اصلاح کنید:
var data = _db.UserTable.Where(a => a.CityID == selectedid);
using (ApplicationDbContext db = new ApplicationDbContext())
{
foreach (var items in data)
{
items.CityID = 2;
}
db.SaveChanges();
}