Если memUserExists имеет значение true, тогда новый RolesListViewModel передается в представление редактирования.Это, в свою очередь, передает совершенно новую модель Контакта частичному представлению каждый раз, когда отображается это частичное представление:
@{Html.RenderPartial("Form", new ContactWebLibrary.Contact());}
Таким образом, контакт, используемый в частичном представлении, не будет содержать никакой информации для отображения, следовательно, никакие значения не отображаются.отображается.
Возвращает ли logic.GetContact (id) RoleListViewModel?В противном случае, когда memUserExists имеет значение false, я не думаю, что следующая строка будет работать при возврате представления Edit:
return View(logic.GetContact(id));
А также, следующая строка в вашем [HttpPost]:
return View(contact);
Это передает объект Contact в представление, которое ожидает RoleListViewModel.
Надеюсь, это поможет.