Код, который генерируется Entity Framework 4 - в основном методы AddTo и Create - следует ли использовать их напрямую? Я пытаюсь понять метод Create. Метод CreateDinner (в NerdDinner), например, это:Код генерируемой сущности Entity Framework
public static Dinner CreateDinner(global::System.Int32 dinnerID, global::System.String title, global::System.DateTime eventDate, global::System.String description, global::System.String hostedBy, global::System.String contactPhone, global::System.String address, global::System.String country, global::System.Double latitude, global::System.Double longitude)
{
Dinner dinner = new Dinner();
dinner.DinnerID = dinnerID;
dinner.Title = title;
dinner.EventDate = eventDate;
dinner.Description = description;
dinner.HostedBy = hostedBy;
dinner.ContactPhone = contactPhone;
dinner.Address = address;
dinner.Country = country;
dinner.Latitude = latitude;
dinner.Longitude = longitude;
return dinner;
}
Там нет SubmitChanges() и при просмотре ссылок, этот метод не вызывается в любом месте. Какова цель этого метода?
Я думаю, я пытаюсь понять, как шаблон Factory соответствует этому коду Entity Framework. Не могли бы вы помочь мне понять, почему быстрее создать объект, используя этот заводский метод, а не просто использовать конструктор объекта: Entity e = new Entity() – Prabhu
Поскольку, как я уже сказал, его список параметров состоит только из свойств, которые не имеют значения nullable в вашем классе так что вы можете быстро найти минимальное требование для сохранения этого объекта в базе данных. Конечно, вы можете напрямую использовать синтаксис инициализатора объекта или конструктор классов, но тогда вы можете забыть инициализировать все поля, не содержащие значения NULL, и в результате ваш файл будет неработоспособным во время выполнения. Кроме этого, это не быстрее или быстрее, чем конструктор любыми способами, так как вы можете видеть, что даже этот заводский метод - это просто реализация инициализатора объекта. –