C# 如何在安装时更改App.config文件?

C# 如何在安装时更改App.config文件?,c#,sql-server,wcf,configuration,C#,Sql Server,Wcf,Configuration,我有两个配置,一个是“ConnectionString”,另一个是“system.serviceModel”,我想在运行时更改配置。以下是我的配置: <connectionStrings> <add name="Procesta.serverSideService.Properties.Settings.Cafeteria_Vernier_dbConnectionString" connectionString="Data Source=SHUVO0\SQLEXPRES

我有两个配置,一个是“ConnectionString”,另一个是“system.serviceModel”,我想在运行时更改配置。以下是我的配置:

<connectionStrings>
  <add name="Procesta.serverSideService.Properties.Settings.Cafeteria_Vernier_dbConnectionString"
  connectionString="Data Source=SHUVO0\SQLEXPRESS;Initial Catalog=Cafeteria_Vernier_db;Integrated Security=True"
  providerName="System.Data.SqlClient" />
</connectionStrings>

<system.serviceModel>
 <services>
  <service name="Procesta.serverSideService.ServerSideServices">
    <endpoint address="net.tcp://localhost:9000/ServerSideServices"
              binding="netTcpBinding"
              bindingConfiguration=""
              name="CustomersService_Tcp"
              contract="Procesta.serverSideService.IServerSideServices" />
  </service>
</services>

我想将连接字符串“数据源=SHUVO0\SQLEXPRESS;初始目录=Cafeteria\u Vernier\u db;集成安全性=True”更改为“数据源=HASAN589\SQLEXPRESS;初始目录=Cafeteria\u Vernier\u db;集成安全性=True”

和地址“net”。tcp://localhost:9000/ServerSideServices“到”网。tcp://192.168.1.1:9000/ServerSideServices"


谢谢你的帮助。

不要。使用您自己的配置文件,然后设置此。。。。在app.config之外。从app.config中隔离用户/安装特定设置有很多好处。

不要。使用您自己的配置文件,然后设置此。。。。在app.config之外。将用户/安装特定的设置与app.config隔离有很多好处。

我认为要在运行时更改设置,它们必须在用户范围内,而不是应用程序内,您不能在运行时更改,默认情况下,ConnectionString设置在应用程序范围内,并且不能更改(不过,我不知道服务设置)


你的设置真的是“动态”的吗?你不能在安装过程中分配它们,或者在关闭应用程序时更改它们(并要求用户“重新启动应用程序以进行更改”?)。或者,您可以向设置中添加一个或多个备选连接字符串,并在运行时根据需要在这两个字符串之间进行更改。

我认为,要在运行时更改设置,它们必须在用户范围内,而不是应用程序内,您不能在运行时更改,并且默认情况下,ConnectionString设置在应用程序范围内,并且这是无法更改的(但我不知道服务设置)


你的设置真的是“动态”的吗?你不能在安装过程中分配它们,或者在关闭应用程序时更改它们(并要求用户“重新启动应用程序以进行更改”?)。或者,您可以向设置中添加一个或多个备选连接字符串,并在运行时根据需要在两者之间进行更改。

您可以创建不同的目标并使用配置转换。例如,您可以从发布目标创建发布目标,并使用web config transformat为此目标应用特定配置离子。查看此问题的前两个答案:

您可以创建不同的目标并使用配置转换。例如,您可以从发布目标创建发布目标,并使用web配置转换为此目标应用特定配置。查看此问题的前两个答案:

运行时或部署时?我不知道我认为在代码执行期间更改配置是个好主意。有没有想过只使用两个部署?运行时还是部署时?我不认为在代码执行期间更改配置是个好主意。有没有想过只使用两个部署?