Твой путь в порядке ИМХО.
Существуют и другие варианты, но ни один из них не дает убедительного преимущества над вашей техникой.
Единственное, что я бы сделал по-другому, - это смоделируйте привязку к пользовательской ViewModel с точными полями, которые вам нужны, а затем выполните правильный код, чтобы назначить только эти значения:
public ActionResult Edit( SlimStoreViewmodel editStoreModel, string Latitude, string Longitude)
{
Store st = storeModel.GetStore(Session["user_id"].ToString());
if (ModelState.IsValid)
{
st.Thing = editStoreModel.Thing;
st.Thing2 = editStoreModel.Thing2;
st.Widget = editStoreMOdel.Widget;
storeModel.Save();
return RedirectToAction("ImageUpload");
}
else
return Edit();
}
Это избавляет от длинных магических нитей, таких как:
TryUpdateModel(st, new string[] { "Storename", "Address1", "Address2", "Zipcode", "City", "Phone1", "Phone2", "Store_email", "Store_homepage", "Pm_ec", "Pm_visa", "Pm_master", "Appointment_requirement", "Short_user_store_description" });