c# - WCF 服务和本地主机 SQL Server 的连接字符串是什么

标签 c# sql sql-server wcf

我在网上看到了相关的点点滴滴,但还是想不通。我在 IIS 和安装了 SQL Server 2012 的同一台服务器上托管 WCF 服务。我想让 WCF 服务对 SQL Server 数据库进行 CRU&D 操作。

我已经读到,因为我在 WCF 服务中创建连接字符串,所以我需要将其视为远程 SQL Server 实例(尽管在同一台服务器上)。但是,我正在对域用户使用集成安全性。我看到的最佳答案是:

  1. 创建本地用户并使用该本地用户帐户的远程连接字符串:Windows Service unable to connect to SQL Server on localhost

  2. 使用远程 SQL Server 实例(我想创建一个完整的其他 SQL Server)。

但除此之外,我迷路了。我想知道是否还有其他选择。可能是一个保留我的域用户帐户并创建正确的连接字符串的人?任何建议将不胜感激。

顺便谢谢大家!

最佳答案

好吧,您还没有说现有的连接字符串有什么问题。因此,让我探索这个答案中的所有可能性——

  1. 由于您使用域用户连接到您的数据库,因此您需要在登录名下将域/本地 Windows 用户组添加到您的 SQL Server,以允许该组用户连接到您的服务器。默认情况下,除非明确添加,否则所有人都被拒绝访问。

  2. 接下来,您的连接字符串采用 [J0e3gan] 已发布的格式。在你的 WCF 服务的 web.config 文件中,确保你有这样的东西——

    <connectionStrings><add name="DbConnection" connectionString="Data Source=(local);Initial Catalog=MyDataase;Persist Security Info=False;Integrated Security=SSPI;" providerName="System.Data.SqlClient" /></connectionStrings>
    
  3. 在 IIS 中,将用于 WCF 服务的应用程序池的“身份”设置为与您要用于验证/授权 WCF - 数据库连接的域用户相同。

如果您需要更多信息,请告诉我。

关于c# - WCF 服务和本地主机 SQL Server 的连接字符串是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23589206/

相关文章:

C# 按长度更改 txtBox BackColor

c# - 为什么 C# 中的委托(delegate)语法允许 +=,而总是最后一个函数也会被指向

mysql - inner join和普通的多表选择有什么区别?

sql - 从 Postgresql 中的 View 中选择随机样本

sql - 如何授予数据库所有者(DBO)EXTERNAL ACCESS ASSEMBLY权限?

sql-server - SQL - CASE 语句中的别名

sql - 以不同的顺序在多列中查找匹配项

c# - 单元测试 FileSystemWatcher.Error 事件

c# - 处理动态生成的表中的按钮点击

sql - 在记录列表之间插入新记录