C#数据库连接字符串 - Go语言中文社区

C#数据库连接字符串


正常的C#数据库连接字符串配置,这是在MSSQL服务器端口是1433(默认)的情况下。

  1. <add key="Article" value="server=.,端口号;uid=Admin;pwd=admin;database=db;"></add>  

但是有时候,为了数据库服务器安全,这个端口会被改成其它的,这时再连接数据库可能报出以下错误:

在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)

这时只需要把端口号加上就可以了:

  1. <add key="Article" value="server=.,端口号;uid=Admin;pwd=admin;database=db;"></add> 

端口修改方法:
“开始”-->“服务器网络实用工具”-->tcp/ip-->默认端口:2433(其它的也可以)

StateServer会话管理

将mode属性设为StateServer,也就是将会话数据存储到单独的内存缓冲区中,再由单独一台机器上运行的Windows服务来控制这个缓冲区。状态服务全称是“ASP.NET State Service ”(aspnet_state.exe),它由Web.config文件中的stateConnectionString属性来配置。该属性指定了服务所在的服务器,以及要监视的端口 :

  1. <sessionState mode="StateServer" 
  2. stateConnectionString="tcpip=myserver:42424" 
  3. cookieless="false" timeout="20" />  

在这个例子中,状态服务在一台名为myserver的机器的42424端口(默认端口)运行。要在服务器上改变端口, 可编辑HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesaspnet_stateParameters注册表项中的 Port值。 显然,使用状态服务的优点在于进程隔离,并可在Web farm中共享。 使用这种模式,会话状态的存储将不依赖于iis进程的失败或者重启,然而,一旦状态服务中止,所有会话数据都会丢失。换言之,状态服务不像SQL Server那样能持久存储数据;它只是将数据存储在内存中。

无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesaspnet_stateParametersAllowRemoteConnectio

n 的值,确保服务器接受远程请求。如果服务器位于本地计算机上,并且上面提到的注册表值不存在或者设置为 0(如果改为1,就可接受远程连接),则C#服务器连接字符串必须使用“localhost”或“127.0.0.1”作为服务器名称。以上介绍C#数据库连接字符串。

版权声明:本文来源51CTO,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:http://developer.51cto.com/art/200908/142434.htm
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-05-16 09:57:35
  • 阅读 ( 712 )
  • 分类:数据库

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢