Еще в 2003 году я начал создавать веб-приложения, которые использовали базы данных на PHP. Конечно, я начал просто помещать SQL-запросы непосредственно в свой код, не используя хранимые процедуры, подготовленные заявления или любые структуры ORM. Но в то время это была обычная практика, о чем свидетельствует код, над которым я работаю сегодня (веб-приложение VB.Net, построенное в это время).Рекомендации лучших приложений баз данных .Net
Приложение использует около десятка хранимых процедур, некоторые подготовленные операторы и множество SQL-запросов непосредственно в коде. Как правило, существуют избыточные блоки кода, которые получают соединение, запускают SQL-запрос (строку), а затем используют считыватель для извлечения данных с использованием имен жестко заданных полей. Сейчас 2011 год, написание такого кода было простым и популярным в 2003 году, но я предполагаю, что это не лучшая практика. Это не безопасно или легко поддерживать, и я не касался хранимых процедур.
Я хочу выйти за рамки запросов sql-кода hardcoding в приложениях и вручную анализировать данные из ответов. Каковы текущие передовые методы и инструменты для создания приложений баз данных в .NET? Я слышал о Linq2SQL, Entity Framework, NHibernate и некоторых других технологиях, но я не знаю, когда их следует использовать или они все еще актуальны.
Я использую Visual Studio 2010, VB/C# и SQL Server 2008 Express
Edit: Похоже, что большинство из вас обсуждают программного обеспечения ОРМ. Это звучит так, как я хочу; у нас есть несколько таблиц с большим количеством информации, к которой можно получить доступ как к объекту. Когда я должен вместо этого использовать стандартный запрос или подготовленный оператор?
Если вы решите пойти с ORM (который звучит как подходящий для вас), вы можете найти помощь в выборе его здесь: http://stackoverflow.com/questions/1377236/nhibernate-entity-frameworkактивный -records-or-linq2sql/ –