调用SQL的Web服务在Visual Studio外部不起作用

时间:2012-04-11 12:57:44

标签: sql web-services iis

我有一个调用SQL查询并返回结果的Web服务。查询正常,Web服务正常。

当我在Visual Studio中的调试中运行它时效果很好(IP是localhost,而iis服务器来自Visual Studio),但是当我将它部署到IIS(在同一台计算机上)时,它什么都不返回。没什么我的意思是空的xml。

有什么问题?

我该如何解决?

这是Web服务,连接字符串不在其中:

[WebMethod]
public string CC()
{
    DataSet s = null;
    String c;
    System.Configuration.Configuration rootWebConfig =
            System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("\\");

    System.Data.SqlClient.SqlConnection sqlConnection1 = new System.Data.SqlClient.SqlConnection();

    sqlConnection1.ConnectionString = connString.ConnectionString;
        string select = "SELECT count (*) from [Customers]";

    // Create an Adapter
    SqlDataAdapter da = new SqlDataAdapter(select, sqlConnection1);

    // Create a New DataSet
    DataSet ds = new DataSet();

    da.Fill(ds, "Customers");

    return ds.Tables[0].Rows[0][0].ToString();
}

以下是web.config文件:

<?xml version="1.0"?>
<configuration>
    <appSettings/>
    <connectionStrings>
        <add name="ExecuTechConnectionString" 
             connectionString="user id=yuuvuv1; password=user;server=202.155.146.289\SQLEXPRESS;Trusted_Connection=no;database=YuYu; connection timeout=30"
             providerName="System.Data.SqlClient" />
    </connectionStrings>
    <system.web>
        <compilation debug="true" />
        <authentication mode="Windows" />
    </system.web>
</configuration>'

我正在使用soapUI-4.5.0软件调用Web服务进行测试,它使用SOAP来调用Web服务。

谢谢,

1 个答案:

答案 0 :(得分:0)

VS和IIS运行不同的服务器 - 前者专门用于VS开发。

在IIS中运行应用程序之前,您必须检查设置 -

  • 应用程序设置 - 允许/启用asp.net吗? (服务扩展)
  • 发布到IIS实际上是将目录标记为ASP.net的应用程序/正确版本
  • 应用程序池设置?

假设上述情况良好,请检查SQL Express,如果您是allowing external connections to it via TCP/IP