Пожалуйста, прочитайте здесь и здесь , чтобы получить краткий обзор моей проблемы и точно понять, что я имею в виду, когда говорю «Привязка модели» из Ajax.
Было бы плохой идеей сделать поля внешних ключей обнуляемыми, чтобы разрешить привязку модели из javascript?
Например, мы хотим привязать объект Person во время вызова ajax к ... (класс Person создается из Entity Framework)
public ActionResult Create(Person personToCreate)
{
//Create person here
}
Если у Person
был объект Pet
, который был внешним ключом в БД, вы не можете передать объект Pet
вместе с другими данными из вызова ajax. Таким образом, если Pet
не обнуляется в БД, привязка к Person
не будет работать.
Итак, я хочу знать, что ... для привязки модели должен / может ли я обнулить поля db, которые я не могу передать из javascript? Или мне нужно сделать Custom Смоделируйте связывание и привязку к «более плоской» версии объекта, чтобы следовать рекомендациям? пример более плоской версии объекта:
public class SimplePerson() {
private string firstName;
private string lastName;
private string petName;
}
Причина, по которой я спрашиваю об этом, состоит в том, что многие классы, созданные в Entity Framework, содержат внешние ключи, что означает, что мне нужно будет создать плоский дубликат почти всех этих классов, и это, кажется, идет вразрез с DRY основной.