В настоящее время я изучаю LINQ, особенно SQL-запросы, с инфраструктурой сущности. Раньше я писал собственные SQL-запросы, и я реализовал его с одним классом в моих проектах под названием "SQL_Connection" или что-то в этом роде. Поэтому у меня были все мои SQL-процедуры, хранящиеся в одном классе.
Теперь, когда я хочу научиться структуре сущности правильным и чистым способом с самого начала, я спрашиваю себя, где я помещаю все эти linq-процедуры, которые я создаю во время проекта. Разве опытные люди помещают их в класс файл связанного класса или используют большой sql-класс, где хранятся все эти процедуры?
Я спрашиваю себя, где я помещаю все те linq-процедуры, которые я создаю во время проекта.
Где вы их создаете.
Если вы не полностью игнорируете.NET, у вас будет запрос TON LINQ, и только SOME будет связан с EF - синтаксис будет таким же. Вы будете использовать LINQ в своем коде для суммирования и агрегирования в массивах памяти и многого.
Красота LINQ заключается в том, что все изменения в базовом провайдере изолированы и/или проверены компилятором, поэтому нет необходимости иметь все в одном месте "в случае, если я переименую таблицу".
Я поддерживаю LINQ там, где мне это нужно. Это позволяет мне изолировать слои без родительского класса всех запросов. Особенно, поскольку некоторые из запросов LINQ представляют собой многоступенчатые запросы, включающие один или несколько данных, а затем группировку и корреляцию в памяти.
Серьезно, что "один класс для всех" (sql) является артефактом того факта, что SQL является строкой, поэтому в случае изменения базы данных вам нужно найти весь SQL, который касается этого измененного элемента, и, пожалуйста, не пропуская тонны кода. Это не обязательно для LINQ.
Это до вашего удовольствия. Отвечая на вопрос: создайте классы BLL для вашего связанного набора объектов. Тем самым незначительные изменения не заставят вас зудеть. Предположим, вы добавили новый столбец в таблицу, так как работа с этой таблицей (и другими связанными друг с другом) легко работает, правильно? Избегайте слишком больших файлов. Старайтесь оставаться модульными и т.д.
Если вам нужно прочитать, ознакомьтесь с этой ссылкой Wiki о архитектуре MVC.