我创建了一个 SOAP webservice 以在 infopath 表单中使用,并添加了返回数据表作为返回类型的方法。当我尝试添加数据连接时,它给了我一个错误,指出“选择的 XML 文档不能用作数据连接源,因为它包含内联 XDR 模式”。这是我写的webmethod。它运行良好在浏览器中运行。
[WebMethod]
public DataTable GetApplications()
{
DataTable dt;
using (SPSite mysite = new SPSite(SPContext.Current.Web.Url))
{
using (SPWeb myweb = mysite.OpenWeb())
{
SPSiteDataQuery query = new SPSiteDataQuery();
query.Lists = "<Lists ServerTemplate=\"115\" />";
query.ViewFields = "<FieldRef Name=\"Applicant File Number\" Nullable=\"TRUE\" Type=\"Text\" />" +
"<FieldRef Name=\"Application Category \" Nullable=\"TRUE\" Type=\"Text\"/>" +
"<FieldRef Name=\"Application Type \" Nullable=\"TRUE\" Type=\"Text\"/>" +
"<FieldRef Name=\"Submission ID \" Nullable=\"TRUE\" Type=\"Text\"/>";
query.Query = "<OrderBy>" +
"<FieldRef Name=\"Submission ID\" />" +
"</OrderBy>";
query.Webs = "<Webs Scope=\"SiteCollection\" />";
dt= myweb.GetSiteData(query);
dt.TableName = "myApplications";
return dt;
}
}
}