Как реализовать Development и ProductionDatabase в ASP.NET MVC с помощью Ado.NET Entity? - PullRequest
0 голосов
/ 22 апреля 2009

Я использовал Ruby on Rails с ActiveRecord, поэтому я довольно привык переключаться на базу данных Production / Development.

Мне интересно, как люди реализуют разницу между базой данных разработки и производства в ASP.NET MVC (желательно с сущностью ado.net).

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

Ответы [ 3 ]

3 голосов
/ 22 апреля 2009

Способ, которым я делаю это (с веб-приложением), заключается в том, чтобы иметь отдельные версии файла Web.config для каждого из: Development (web.config), QA (web-qa.config) и Production (web-prod .config) устанавливает. Файлы конфигурации имеют разные строки подключения, указывающие на соответствующие экземпляры базы данных. Строка подключения по умолчанию указывает на экземпляр сервера SQL на моем локальном компьютере, который недоступен в сети.

На этапе публикации я вручную удаляю файл web.config и переименовываю соответствующую конфигурацию QA / Prod в web.config. Это подключит этот экземпляр приложения к правильному экземпляру базы данных.

1 голос
/ 22 апреля 2009

Самый простой способ (хотя это не так просто, как в Rails) будет включать строки подключения в App.config .

0 голосов
/ 23 апреля 2009

У вас должен быть один набор данных сущностей и установить объект сущностей, используя конструктор, который принимает ConnectionString, который вы можете прочитать из:

WebConfigurationManager.ConnectionStrings["ConnStrName"].ConnectionString;

Элемент ConnectionStrings также поддерживает общий атрибут configSource .

Поэтому вы можете иметь что-то вроде:

<connectionStrings configSource="PathToConnectionStrings.config" />

Это позволяет хранить все строки подключения в отдельном файле, который затем может иметь разные значения в каждой среде.

Обратите внимание, что в отличие от атрибута файла appSettings , это не делает слияние, оно полностью заменяет раздел.

Обратите внимание, что в VS2010 у вас будет возможность изменить .config на основе конфигурации сборки, поэтому вы можете изменить значения, просто установив для вашей сборки значение "Production", скажем.

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