轉:使用WebService動態產生DataSet綁定到Reporting Services

來源:互聯網
上載者:User
使用WebService動態產生DataSet綁定到Reporting Services


轉自:http://tech.sina.com.cn/s/2008-07-01/0833714471.shtml

 

【IT168技術文檔】

  我的步驟是這樣的:
  1.首先建立一個WebSerivce,然後寫了一個Web Method:

  [WebMethod]public XmlDataDocument GetDataSource(){string strCon;DataSet ds = new DataSet();XmlDataDocument xmlDataDoc;strCon = "Your Connection String";string selectText = "Your Select String";SqlDataAdapter dataAdapter = new SqlDataAdapter(selectText,strCon);try{dataAdapter.Fill(ds);xmlDataDoc = new XmlDataDocument(ds);}catch{xmlDataDoc = null;}finally{strCon = null;ds.Dispose();}return xmlDataDoc;}
  我們可以注意到。這裡使用了XmlDataDocument,還記得陸飛文章中提到了XML文檔,我們需要受到手動修改它嗎?其實是不需要的,我們可以通過XmlDataDocument關聯到DataSet產生相應的XML

  2.建立一個Reporting Services項目,注意時Reporting Serverices項目,不是Report Viewer控制項

  然後在Shared Data Source裡建立一個DataSource,指定Type為XML,Connection String 為你的WebSerivce,比如說 http://localhost/WebService/Service.asmx(你可能需要在IIS中部署WebService)

  然後建立一個Report,指定Query String 為: 

<Query xmlns="http://Eric.org/"><SoapAction>http://Eric.org/GetDataSource</SoapAction></Query> 

   然後就可以取得資料了。

  過程中,我遇到的一個問題是,如果在VS中建立的預設的WebService Namespace為http://tempuri.org/,Query String檢查就會報錯,你只要更改一個Namespace就可以了(如果說我改成了http://Eric.org)

  這樣做的好處顯而易見,就是可以使用Reporting Services的可視化報表設計系統了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.