Каков наилучший способ встраивания SQL в VB.NET - PullRequest
2 голосов
/ 04 марта 2009

Я ищу информацию о передовых методах или макете проекта для программного обеспечения, использующего SQL, встроенный в VB.NET или C #. Программное обеспечение подключится к полной базе данных SQL. Программное обеспечение было написано на VB6 и портировано на VB.NET, мы хотим обновить его для использования функциональности .NET, но я не уверен, с чего начать свои исследования. Мы используем Visual Studio 2005. Все манипуляции с базами данных сделаны из VB.

Обновление: уточнить. В настоящее время мы используем SqlConnection, SqlDataAdapter, SqlDataReader для подключения к базе данных. Под внедрением я подразумеваю, что хранимые процедуры SQL пишутся в нашем VB-коде и затем запускаются на базе данных. Все наши таблицы, хранимые процедуры, представления и т. Д. Манипулируются в коде VB. Структура нашего кода довольно грязная. Я ищу лучшую архитектуру или шаблон, который мы можем использовать для организации нашего кода.

Можете ли вы порекомендовать какие-либо книги, веб-страницы, темы, которые я могу найти в Google и т. Д., Чтобы помочь мне лучше понять, как нам это сделать.

Ответы [ 4 ]

3 голосов
/ 04 марта 2009

Я ищу лучшую архитектуру или шаблон, который мы можем использовать для организации нашего кода ...

темы, которые я могу гуглить

Посмотрите на DAL (Уровень доступа к данным) для транзакций базы данных Вот ссылка на вопрос StackOverflow, опубликованный кем-то, кто сталкивается с подобной ситуацией

Создание библиотеки классов в VB.NET

Когда вы google "Как создать DAL" , вы увидите список того, как создать DAL, а также что такое DAL. И вот хорошая статья, которая показывает, как DAL вписывается в архитектуру N-Tier

1 голос
/ 04 марта 2009

Звучит так, будто вы ищете большую теоретическую книгу, написанную для одного очень конкретного случая, то есть, какова лучшая практика для управления нашей текущей структурой SQL-кода для спагетти, и я не знаю, что когда-либо видел книгу или документ, который описывает это.

При этом мы несколько лет назад преобразовали несколько приложений из VB6 в C # и были в одном месте. Помимо разделения отдельных модулей, чтобы в целом их организация имела более логичный смысл, наши приложения практически такие же, какими они были, просто переписанные в C #. Мне лично не нравится идея отделить код SQL от функции, для которой он был написан (что-то вроде того, что вы пытаетесь сделать); в общем, если у нас есть функция, которая должна поразить базу данных, мы создаем SqlCommand и, необязательно, SqlDataReader, устанавливаем для CommandType значение StoredProcedure и добавляем параметры, затем выполняем вызов и используем результат, выполняя с ним все, что угодно функция была запрограммирована на выполнение.

Я не знаю, что это лучший способ сделать это, но у нас это работает.

0 голосов
/ 04 марта 2009

В дополнение к тому, что сказал Sung Meister, вам также следует рассмотреть возможность перемещения SQL из кода VB.NET в хранимые процедуры, а затем вызывать SP из кода VB.NET (уровня доступа к данным). Это дает много преимуществ.

0 голосов
/ 04 марта 2009

Можно ли преобразовать его в LINQ ? Это безопаснее, чем преобразовывать его в обычные старые встроенные операторы SQL.

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