Я меняю свои старые способы ADO.Net для Entity Framework. Класс «Мои продукты» состоит из примерно 20 таблиц (3 из которых я до сих пор объединил в один класс), есть также 5 таблиц типов продуктов, поэтому я создал класс продуктов Аннотация, и каждый тип имеет свой собственный класс, используя прекрасное наследование, которое обеспечивает Entity Framework, используя методологию Table per Type, как показано ниже. Таким образом, фактически 3 таблицы в классе продуктов и 5 таблиц типов продуктов, каждая со своим собственным классом, полученным из Product.
<there was a screenshot here, I don't have the rep to post it though!>
Я следил за тем, что этот EDM делает под прикрытием с SQL Server Profiler, пока я работал. Когда я запускаю простой запрос Linq to Entities, как показано ниже:
var model = from p in Product.Products
where p.archive == false && ((Prod_ID == 0) || (p.ID == Prod_ID))
select p;
Возвращает все типы продуктов, которые не были заархивированы, и, возможно, там также может быть выполнен поиск по идентификатору. SQL Server Profiler показывает мне 800 строку кусок SQL !!
Это нормально? И это исполнитель? Или я отправил Entity Framework с ума?
<I tried to post the SQL too, but there was too much of it for the post>
Так что, пожалуйста, просто проверка работоспособности и любые советы!
С уважением,
Mark