我有两个配置,一个是“connectionStrings”,另一个是“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>
我想将connectionString“Data Source = SHUVO0 \ SQLEXPRESS; Initial Catalog = Cafeteria_Vernier_db; Integrated Security = True”更改为“Data Source = HASAN589 \ SQLEXPRESS; Initial Catalog = Cafeteria_Vernier_db; Integrated Security = True”
并将“net.tcp:// localhost:9000 / ServerSideServices”解析为“net.tcp://192.168.1.1:9000 / ServerSideServices”
感谢s的帮助。
答案 0 :(得分:1)
别。使用您自己的配置文件,然后在app.config之外设置....从app.config隔离用户/安装特定settig的优势很多。
答案 1 :(得分:0)
我认为能够在运行时更改设置,他们必须在用户范围内,而不是应用程序,您不能在运行时更改它,并且默认情况下ConnectionString设置在应用程序范围内,并且无法更改(但我不知道服务设置)。
您的设置真的“动态”吗?不能在安装过程中分配它们,或者在关闭应用程序时更改它们(并要求用户“重新启动应用程序以进行更改”)。或者,您可以在设置中添加一个备用连接字符串,并在运行时根据需要在两者之间进行更改。
答案 2 :(得分:0)
您可以制作不同的目标并使用配置转换。例如。您可以从发布目标创建发布目标,并使用Web配置转换为此目标设置特定配置。查看此q / a上的前两个答案:App.Config Transformation for projects which are not Web Projects in Visual Studio 2010?