Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 将数据从数据库分配到表时出错?_Asp.net_Sql Server 2008 - Fatal编程技术网

Asp.net 将数据从数据库分配到表时出错?

Asp.net 将数据从数据库分配到表时出错?,asp.net,sql-server-2008,Asp.net,Sql Server 2008,我试图将数据库中的数据绑定到DataTable对象,但一直收到以下错误: 内容类型text/html;响应消息的字符集=UTF-8不存在 与绑定的内容类型不匹配(text/xml;charset=utf-8) 我相信这意味着有一个错误来自某个地方,并作为text\html发送。 但是,如果我使用aspx文件中的sqldatasource标记将数据绑定到grif,它绑定得很好 以下是我的web服务文件中的函数: [WebMethod] public DataTable getTable(

我试图将数据库中的数据绑定到DataTable对象,但一直收到以下错误:

内容类型text/html;响应消息的字符集=UTF-8不存在 与绑定的内容类型不匹配(text/xml;charset=utf-8)

我相信这意味着有一个错误来自某个地方,并作为text\html发送。 但是,如果我使用aspx文件中的sqldatasource标记将数据绑定到grif,它绑定得很好

以下是我的web服务文件中的函数:

 [WebMethod]
    public DataTable getTable()
    {
        DataTable myTable = new DataTable("AMR_COUNTY");

        ConnectionStringSettingsCollection s = ConfigurationManager.ConnectionStrings;
        using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["wmoddevsql02.ePCR310_Server.dbo"].ToString()))
        using (SqlCommand cmd = conn.CreateCommand())
        {
            conn.Open();
            cmd.CommandText = string.Format("SELECT * FROM AMR_COUNTY");
            using (SqlDataAdapter dataAdapter = new SqlDataAdapter(cmd))
                dataAdapter.Fill(myTable);
        }

        return myTable;

    }
}
以下是我的代码背后的调用:

        DataTable dataTable = new DataTable();
        using (MCMwebservice.Service1SoapClient myWebService = new MCMwebservice.Service1SoapClient())
        {//use the session set userID to query Database for all incidents for the logged in user 
           dataTable = myWebService.getTable();
           WebDataGrid1.DataSource = dataTable;
            WebDataGrid1.DataBind();
        }

SOAP web服务旨在返回XML,因此您应该接受这一点,并从数据的XML表示形式构建对象,如下所示:

public DataTable BuildDataTableFromXml()    
{
    StringReader theReader = new StringReader(xmlData);
    DataSet theDataSet = new DataSet();
    theDataSet.ReadXml(theReader);

    return theDataSet.Tables[0];
}

注意:SOAP适用于任何能够理解XML的客户机,因此如果您想从Java客户机使用此服务,那么它将无法理解什么是
DataTable
,因为这是一种特定于.NET的数据结构。

谢谢,我发现web services congif文件中没有列出连接字符串