2013-02-25 105 views
0

我創建了一個SOAP webservice以在infopath窗體中使用,並添加了返回數據表作爲返回類型的方法。當我嘗試添加dataconnection的方法時,它給了我一個錯誤,指出「selecetd XML文檔不能用於數據連接源,因爲它包含內聯XDR模式」。 這是我寫的webmethod。它可以很好地在瀏覽器中運行。Infopath創建數據連接時出錯

[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; 
      } 
     }   

} 

回答

0

將數據表添加到數據集中,並通過數據連接將數據集返回到infopath表單。它運作良好。