2011-02-01 3 views
0

Мой вопрос прост, у меня есть две базы данных с тем же scehema, одна живая база данных говорят DLive и другой один обкатки говорят DTestBed ....дозвуковых 3.0 две различные базы данных имен Выпуск

Однако, я хочу используйте одно и то же пространство имен баз данных для обеих баз данных. Как я могу достичь этого без изменения пространства имен в моем коде? Иногда вам нужно делать сборки для живых и тестовых стендов в тот же день! Его действительно сложно изменить большие пространства имен проектов каждый раз, когда вы строите.

Как я могу просто изменить строку подключения webconfig и сделать это?

Спасибо,

ответ

0

Вы используете SubSonic2 или три?

С дозвуковых 3 это так просто, как это:

var db = new YourProductDB("connectionstringname"); 
var db = new YourProductDB("Server=localhost;Database=devdb;Uid=root;", "MySql.Data.MySqlClient"); 

для первой строки вы должны иметь обе строки соединения, определенные в web.config/app.config

3

ШАГ 1: Open 'Setting.ttinclude' из вашего дозвукового проекта ..

ШАГ 2: Добавить vairable под 'сопзЬ струнной DatabaseName' ..

const string DatabaseObjectName = "DatabaseObjectName";// This is the object that you use for calling Stored Procedures, Tables and etc... 

вот так; DatabaseObjectNameDB db = new DatabaseObjectNameDB();

ШАГ 3: Теперь откройте 'ActiveRecord.tt', 'StoredProcedures.tt', файлы 'Context.tt' из дозвукового проекта ..

ШАГ 4: Заменить '< # = DatabaseName #> 'с' < # = DatabaseObjectName #>»в выше открытых файлов ...

ШАГ 5: Теперь 'Run' Пользовательские инструменты, с помощью Righ-Click ваш Дозвуковой проект ...

Здесь вы идете. .. Проблема решена!

С уважением, Naeem