2015-10-24 6 views
0

У меня есть приложение в веб-приложении C#, asp.net (только внутри нашей компании) и, наконец, развертывание приложения на сервере ПК (разные хосты и порты), выделенных для этой цели.Редактирование Web.Config после публикации в asp.net Сервер IIS

Когда я разрабатываю или поддерживаю приложение на своем ПК, имея разные хосты и порты, каждый раз, когда мне нужно публиковать им изменения строки подключения в web.config и копировать папку приложения на серверных ПК, interub-> wwwroot ,

Есть ли какой-либо вариант, чтобы избежать каждый раз изменения? т. е. для публикации я буду использовать отдельный web.config, а для разработки работы я использую отдельный web.config.

сервер PC- web.config, строка подключения:

<connectionStrings> 
    <add name="MySqlConnectionString" connectionString="server=192.168.3.5;user id=root;password=sim;database=simpayroll;allowuservariables=True;port=3306" 
     providerName="MySql.Data.MySqlClient" /> 
    <add name="simpayrollConnectionString" connectionString="server=192.168.3.5;user id=root;port=3306;password=sim;database=simpayroll;persistsecurityinfo=True;allowuservariables=True" 
     providerName="MySql.Data.MySqlClient" />  
    </connectionStrings> 

Мой местный Web.config

<connectionStrings> 
    <add name="MySqlConnectionString" connectionString="server=localhost;user id=root;password=root;database=simpayroll;allowuservariables=True;port=3306" 
     providerName="MySql.Data.MySqlClient" /> 
    <add name="simpayrollConnectionString" connectionString="server=localhost;user id=root;port=3306;password=root;database=simpayroll;persistsecurityinfo=True;allowuservariables=True" 
     providerName="MySql.Data.MySqlClient" /> 
    </connectionStrings> 
+2

любезно скрыть учетные данные, если они имеют важное значение, как PWD – tharif

+0

http://stackoverflow.com/questions/12882425/can-i-have-multiple-web-config-files-in-a-single-web-project – tharif

+1

@utility Я подозреваю, что OP спрашивает о [преобразованиях web.config при публикации] (https://msdn.microsoft.com/en-us/library/vstudio/dd465318%28v=vs.100%29.aspx), а не несколько конфигурационных файлов. –

ответ

1

Вы можете использовать web.config transformations до более чем прийти с вашей проблемой

В вашей Web.Release.Config file,

<connectionStrings xdt:transform="Replace"> <add name="MySqlConnectionString" connectionString="your connection string" providerName="MySql.Data.MySqlClient" /> <add name="simpayrollConnectionString" connectionString="your connection string" providerName="MySql.Data.MySqlClient" /> </connectionStrings>

+0

Извините. У меня есть только один файл web.config. Когда я вижу в обозревателе решений, есть один файл. Я что-то пропустил? – Anu

+0

Ok.Now я преобразовал мое приложение VS2010, теперь я вижу, что опция «Добавить кодирование» и два файла конфигурации есть. Возможно, в VS2008 эта опция отсутствует – Anu

+0

Отлично, и если вы используете более высокую версию VS, чем он уже поставляется с тремя конфигурационными файлами. –

Смежные вопросы