我正在做一个示例代码,我陷入了一个非常奇怪的行为,我试图使用此连接字符串连接到SQL Server
"Data Source=" + ServerName + "." + DomainName + ";Initial Catalog="+DBName+";Integrated Security = false;Persist Security Info=false;User ID=sa;Password=" & Mypassword & ";Connection Timeout=90"
Run Code Online (Sandbox Code Playgroud)
显然我没有使用Windows集成身份验证或(SSPI),当我在Web应用程序上使用它时,我收到此错误:
建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)
请注意,我创建了一个.Net应用程序,该应用程序使用相同的连接字符串,并且从IIS所在的计算机运行,并且工作正常.
以下是我所做的步骤:
我检查了我打开它的SQL客户端配置,并启用了协议tcp和命名管道.
我在IIS上进行了模拟并使用了Windows身份验证,并确保IIS使用与我相同的凭据.
我用Wireshark看到wut是两个连接之间的区别,我无法理解输出,但似乎从IIS它总是尝试使用Windows身份验证,虽然我已经明确地使字符串,使它不使用Windows身份验证基本上发生的是,在连接开始时的某些协商似乎从两个应用程序"not_defined_in_RFC4178 @ please_ignore"相同,然后IIS总是转到NTLMSSP注意到我的用户除了通过用户名之外没有访问数据库的权限和密码,因此当IIS从应用程序正常成功时,协商会失败.
我的问题是如何解决这个问题,我假设有一些配置要求IIS中的任何SQL客户端使用Windows身份验证,但我不知道在哪里或如何禁用它
我注意到我没有使用web.configSQL Server连接字符串的配置,IIS7会出现此问题.
如果我有一个像这样的字符串:
"26 things"
Run Code Online (Sandbox Code Playgroud)
我想将它转换为26.我只想在字符串开头的整数.
如果我使用C,我只使用atoi功能.但我似乎无法在.NET中找到任何相同的东西.
从字符串开头获取整数的最简单方法是什么?
编辑:对不起,我很暧昧.在字符串中查找空格字符的答案将在许多情况下起作用(甚至可能是我的).我希望在.NET中使用atoi.答案也应该使用像"26things"这样的字符串.谢谢.
我有一个文件,数字保存为字符串.我希望将此数据加载为char []然后将此数组转换为整数值.我有几个值要加载,我试图避免创建数千个临时字符串的开销.