连接SQLSERVER2000字符串问题

yuqi508 2006-05-21 08:21:07
奇怪了
在FORM中连接SQLSERVER2000字符串就好用
而在服务方法(WEB SERVICE)中就不好用了
请问是什么问题
...全文
432 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuqi508 2006-05-21
  • 打赏
  • 举报
回复
连接字符串
workstation id=SHENGZHIYUAN;packet size=4096;integrated security=SSPI;data source=SHENGZHIYUAN;persist security info=False;initial catalog=EMS


提示什么错误
未处理的“System.Web.Services.Protocols.SoapException”类型的异常出现在 system.web.services.dll 中。

其他信息: System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 ---> System.Data.SqlClient.SqlException: 用户 'SHENGZHIYUAN\ASPNET' 登录失败。
at System.Data.SqlClient.ConnectionPool.GetConnection(Boolean& isInTransaction)
at System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction)
at System.Data.SqlClient.SqlConnection.Open()
at EMS_WS.Class1.ConnectToDB() in D:\EMS_20060412\EMS_20060412\EMS_WS\Class1.vb:line 48
at EMS_WS.Class1.ExecuteSelectSQL(String pstrSQL, DataTable& pdtResultTable) in D:\EMS_20060412\EMS_20060412\EMS_WS\Class1.vb:line 65
at EMS_WS.Class1.GetUserInfo() in D:\EMS_20060412\EMS_20060412\EMS_WS\Class1.vb:line 20
at EMS_WS.Service1.Getu() in D:\EMS_20060412\EMS_20060412\EMS_WS\Service1.asmx.vb:line 56
--- 内部异常堆栈跟踪的结尾 ---
孟子E章 2006-05-21
  • 打赏
  • 举报
回复
权限和数据库配置问题
可以参考
www.connectionstrings.com
chengpei_chen 2006-05-21
  • 打赏
  • 举报
回复
而在服务方法(WEB SERVICE)中就不好用了???
取出来仔细看是否一样,应该还是连接字符串的问题。
提示什么错误?
syeerzy 2006-05-21
  • 打赏
  • 举报
回复
SqlServer中加一个登录,windows验证方式,添加'SHENGZHIYUAN\ASPNET',并加为dbowner
marvelstack 2006-05-21
  • 打赏
  • 举报
回复
/**********************************/
看到EMS,顺便问一下楼主是否在做电子帐册加工贸易联网开发。
marvelstack 2006-05-21
  • 打赏
  • 举报
回复
权限不够,使用身份模拟解决。
<system.web>
<machineKey
validationKey= "250B3C89CB21F4F1422FF158A5B42D0E8DB8CB5CDA1742572A487D9401E3400267682B202B746511891C1BAF47F8D25C07F6C39A104696DB51F17C529AD3CABE"
decryptionKey= "1A9BE8FD67AF6979E7D20198CFEA50DD3D3799C77AF2B72F"
validation="SHA1"
/>
<identity impersonate="true" userName="DomainWeb\ASPNETOwner" password="Password"/>

<httpRuntime maxRequestLength="10240" useFullyQualifiedRedirectUrl="true" appRequestQueueLimit="500" executionTimeout="100"/>
</system.web>

==============
把username 和password修改成WebService所在的Windows帐户,注意权限要够大。


Knight94 2006-05-21
  • 打赏
  • 举报
回复
不要如下使用,
连接字符串
workstation id=SHENGZHIYUAN;packet size=4096;integrated security=SSPI;data source=SHENGZHIYUAN;persist security info=False;initial catalog=EMS

因为启动webservice的用户为aspnet用户,而不是系统当前用户,因此你用系统认证的方式去验证,那么无法判别aspnet用户。
你最好改成sql server认证机制。

110,537

社区成员

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

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

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