Настройка уровня бизнес-логики с использованием DBML - PullRequest
0 голосов
/ 26 мая 2010

Я занят созданием слоя бизнес-логики. Теперь у меня возникла проблема, так как я хочу программировать, используя c #, и весь проект, для которого я должен сделать модуль, основан на vb.net. Я решил это, используя новый проект в решении. Этот проект будет поддерживать классы данных и бизнес-логику. Теперь я столкнулся с проблемой, по крайней мере, я не знаю, что здесь делать. Это то, что я сделал до сих пор:

  • Я создал новый проект в решении, в котором я не могу использовать C #, поскольку все это vb.net
  • Я сделал dbml для каждого типа сущностей, которые я хочу использовать в своем будущем приложении.

Теперь я работаю над уровнем бизнес-логики. У меня есть DBML для каждого типа, который я должен использовать в моем приложении. Например, у меня есть DBB под названием «Отношения». Теперь я хочу настроить функциональность BLL, чтобы он возвращал мне список Отношений, основанный на вводе строки поиска. Теперь я должен реализовать класс Relations.cs, добавить логику конструктора и т. Д., Создать список этого типа и вернуть этот список, или я должен просто использовать свой Datacontext из dbml отношений и использовать linq, чтобы получить список типа qry. как код на следующей строке?

List<QRY_HOSTING_Relaty> relatieLijst = (
    from QRY_HOSTING_Relaty res 
    in dcRelaties.QRY_HOSTING_Relaties
    select res).ToList<QRY_HOSTING_Relaty>();

Дело в том, что я не уверен, должен ли я создавать свои собственные типы, в то время как у меня уже есть типы, определенные в моих dbml, которые я, вероятно, просто могу использовать. Итак, я должен реализовать свой собственный класс отношений и использовать DBL?

1 Ответ

1 голос
/ 26 мая 2010

Обычно вы должны иметь 1 файл DBML на базу данных / домен. Вы не должны создавать DBML для каждой таблицы / класса / объекта, потому что это создаст один DataContext для каждого класса. Это может привести к потере большинства полезных возможностей LINQ to SQL, таких как транзакции памяти (единица работы) и выполнение запросов LINQ для нескольких объектов.

Обычно нет необходимости создавать свои собственные типы, которые обертывают классы, сгенерированные LINQ to SQL. Типичное использование: создание таблиц (с правильными отношениями) в вашей базе данных; Создайте DBML и перетащите все необходимые таблицы в DBML; Изменились имена таблиц и столбцов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...