C# Winform项目,客户端数据库连接不通

sxl_88 2017-02-17 09:44:14
利用.net C#程序给用户开发了C/S版的桌面应用程序,由于在用户的本地需要存储数据,就选择了安装MSSQL_2008R2_EXPRESS简化版的SQL数据库。
目前遇到如下问题:
安装好打包的桌面应用程序以及简化版的SQL数据库后,发现需要更改连接数据源的地址。有部分用户数据源的地址可能用localhost,还有部分用户需要设置用户电脑的机器名。请问该如何设置,谢谢!




App.config文件配置如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<!--文件数据库 SQL Server-->
<add key="ConnString" value="Data Source=localhost;Initial Catalog=db;Integrated Security=True;" /> </appSettings>
<!--<system.diagnostics>
<switches>
-->
<!--调试模式开关, <add key="ConnString" value="Data Source=172.10.11.41;Initial Catalog=Jzcy;User Id=sa;Password=sa;Integrated Security=false;" />
true为开启,程序在发生异常时,会在运行目录中生成一个日志文件 .\\Log\20140910.log
false为关闭
-->
<!--
<add name="DebugOutput" value="true" />
</switches>
</system.diagnostics>-->
<system.web>
<membership defaultProvider="ClientAuthenticationMembershipProvider">
<providers>
<add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
</providers>
</membership>
<roleManager defaultProvider="ClientRoleProvider" enabled="true">
<providers>
<add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
</providers>
</roleManager>
</system.web>
</configuration>
...全文
333 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
Sql Server Compact 可以使用 Sql Server 一样的语法,所以你用一会儿功夫就改造完成了。 以后你的这类产品,标榜“自己的程序自带数据库”,不要再强调什么独立数据库系统。
  • 打赏
  • 举报
回复
引用 楼主 sxl_88 的回复:
利用.net C#程序给用户开发了C/S版的桌面应用程序,由于在用户的本地需要存储数据,就选择了安装MSSQL_2008R2_EXPRESS简化版的SQL数据库。 目前遇到如下问题: 安装好打包的桌面应用程序以及简化版的SQL数据库后,发现需要更改连接数据源的地址。有部分用户数据源的地址可能用localhost,还有部分用户需要设置用户电脑的机器名。请问该如何设置,谢谢!
应该改变策略。 如果你的客户的数据库根本没有4G,你为什么要给它安装独立的数据库系统? 你应该使用 Sql Server Compact 这类嵌入式的数据库系统。http://sqlcetoolbox.codeplex.com/ 嵌入式的数据库系统不但速度快,而且无需安装(嵌入你的程序),无需配置。你把数据库文件自动生成在 app_data 目录下即可。 代码写得越多、配置文件越臃肿,对于你这类小项目来说,那样的设计方式越不好!小项目就不应该用远程数据库系统,除非你的客户的数据库大于 4G 字节。
sxl_88 2017-02-17
  • 打赏
  • 举报
回复
这个地址得提前设置好,不可能一个一个安装。所以不知道设置localhost还是机器名
qq_36703213 2017-02-17
  • 打赏
  • 举报
回复
<add key="ConnectionString1" value="user id=sa;password=sa321;initial catalog=databasename;data source=192.168.1.26;Connect Timeout=30"/>
xiaoyu5425 2017-02-17
  • 打赏
  • 举报
回复
写配置文件吧
  • 打赏
  • 举报
回复
数据库连接都不会改怎么能做出能用的项目?
msdn_duan 2017-02-17
  • 打赏
  • 举报
回复
绿领巾童鞋 2017-02-17
  • 打赏
  • 举报
回复
1.本机和数据库服务器的防火墙拦截。 2.数据库对应的TCP协议服务并未打开。 3.web browser服务并未打开。
吉普赛的歌 2017-02-17
  • 打赏
  • 举报
回复
用 sqlite 吧, 这个很方便的了。 http://blog.csdn.net/yenange/article/category/6254779

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧