2011-12-03 2 views
1

У меня на самом деле два проекта ... проект MVC и проект, используемый для создания моего собственного MembershipProvider.Может ли web.config из проекта быть прочитан внешней сборкой?

Желательно, чтобы проект, который держал членский профайл, прочитал мой web.config из проекта MVC, чтобы получить connectionString.

Другими словами .. когда я добавляю сборку в свой проект MVC, он должен иметь возможность перейти к web.config и получить отсюда соединение.

ответ

2

Полностью можно прочитать web.config, если ваш код находится на отдельной сборке или нет.

Например, модели данных Entity Framework обычно помещают отдельный проект, чтобы его можно было повторно использовать, а для модели фреймворка сущности требуется строка соединения из web.config, если вы не предоставите ее внутри конструктора.

В качестве примера, ниже метод будет возвращать ConnectionString имени myConn:

public string GetMyConn() { 

    return System.Configuration. 
     ConfigurationManager.ConnectionStrings["MyConn"].ToString(); 
} 

UPDATE

Я не уверен, что вы хотите здесь, но если вы хотите, чтобы сделать имя ConnectionString изменчива , сделайте это так:

public string GetMyConn(string connStr) { 

    return System.Configuration. 
     ConfigurationManager.ConnectionStrings[connStr].ToString(); 
} 

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

+0

Да, но не является ли имя соединительной строки жестко запрограммировано таким образом? – Rushino

+0

@ Rushino см. Обновленный ответ. – tugberk

+0

Спасибо .. однако я отправил новый вопрос, так как понял, что это не то, что я хотел вначале. – Rushino