我创建了一个Web服务,它连接到我本地计算机上的SQL Server 2008 R2中托管的数据库,并对其进行一些操作。
这是Web服务中的连接字符串:
conn = new SqlConnection("Data Source=amir-pc\\SQLEXPRESS;User Id=sa;Password=1234; Initial Catalog=Election;Integrated Security=True");
它运行良好并成功访问数据库并正确运行。
现在我想将此Web服务添加到IIS。
我在Windows 7上成功将其添加到IIS,并可以从浏览器运行它。
localhost/election_service/service.asmx
但是当我试图调用一个检查连接的函数时,它失败了,我不知道为什么。 这是功能:
[WebMethod]
public string Check_conn()
{
try
{
conn.Open();
conn.Close();
return "ok";
}
catch
{
return "failed";
}
}
为了能够访问数据库,我必须做哪些修改吗?
答案 0 :(得分:0)
您可以提供更多信息,请尝试更改您的代码以了解异常情况。
public string dbcheck()
{
try
{
conn.Open();
conn.Close();
return "ok";
}
catch (Exception ex)
{
return ex.Message;
}
}
嗨,那么..是登录问题:打开IIS打开应用程序池选择当前正在使用的应用程序池(默认为DefaultAppPool)转到高级选项,找到Identity并更改为(NT AUTHORITY \ Network Service) )然后你已经改变了你的应用程序用户,现在你需要添加permision到网络服务到数据库Open SQlMananger,然后转到Node Security,rigth click和属性转到NT AUTHORITY \ Network Service转到User mapping并添加数据库你想要允许访问。