簡體   English   中英

帶有對象數據源的Visual Studio 2010本地SSRS報告(.rdlc)

[英]Visual Studio 2010 Local SSRS Report (.rdlc) with Object Data Source

我在本地處理模式下使用ReportViewer 2005和2008創建了更多項目,而不是我可以依賴的項目。 所有Visual Studio 2005或2008 ASP.NET Web表單項目。 我總是使用一些Object數據源來報告。

今晚,我試圖將相同的功能添加到Visual Studio 2010 MVC 2項目中,並且失敗了。 首先,添加新項目>報告>報告現在是2008 RDLC而不是2005 RDLC報告。 其次,在嘗試添加DataSet時,我通常使用返回IEnumerables(Of Stuff)靜態方法創建數據代理類的方法將不會顯示為DataSources下拉列表中的源

空數據源

第三,我唯一的選擇是添加數據庫連接。 沒有“對象數據源”可供選擇:

僅限數據庫連接

我很難過。 就像我提到的那樣,使用ReportViewer控件實際呈現報表時,我沒有任何問題。 我不能做的是弄清楚如何使用Visual Studio 2010在這些新的2008年報告中設置數據源,以便我可以將一個域對象列表泵入ReportViewer並顯示報告。

UPDATE

通過更多的研究,我發現MVC項目不允許在其中使用對象數據源。 我的問題的一個解決方案是在解決方案中創建一個單獨的項目 - 一個Web應用程序,一個服務,甚至只是一個類庫,以便相應地添加報告並進行設計。

我還在這里尋找替代品。

這里有幾個解決方案。 第二個更好,因為它不需要不必要地復制你的程序集。

解決方案1 (好的)

添加到問題本身並在Visual Studio 2010報表查看器 - 對象數據源中添加后 ,只需為項目創建一個單獨的庫並在其中添加rdlc文件。 這似乎是MVC Web應用程序項目類型本身的錯誤,因此任何其他項目類型(如類庫)都應該起作用。 數據源配置向導現在應如下所示:

數據源配置向導

解決方案2 (更好)

在ASP.NET MVC中的RDLC報告中看不到或添加網站數據源 ,您可以在MVC項目的任何位置添加.aspx頁面,以欺騙Visual Studio引入正確的設計時庫。

只需執行以下操作:

  • 關閉所有窗戶
  • 清潔和重建解決方案
  • 將WebForm1.aspx添加到項目中
  • 打開RDLC文件並從下拉列表中選擇一個DataSource:

    DataSource下拉列表

簡短的回答:是的,你可以在RDLC 2008中使用對象數據源(它只是不直觀)。 這是如何做:

打開RDLC頁面(在[Design]視圖中)。 片刻之后,“數據”選項卡將出現在Visual Studio的頂部。 選擇“添加新數據源”,選擇“對象”,然后選擇“下一步”。 從那里,您將能夠看到可以綁定到的對象列表。 從項目中選擇您的DTO /業務對象/任何內容,然后點擊完成。 在Visual Studio左側的“報表數據”側欄選項卡中,您將看到添加了對象。 復制它生成的數據源名稱(它將類似於“MyProject_MyObject”)。

現在在你的控制器中,你可以拉出那個DTO / BusinessObject的IEnumerable並將其作為數據參數和你的數據源名稱傳遞給它(抱歉,沒有VB語法):

ReportDataSource reportDataSource =
            new ReportDataSource("MyProject_MyObject", myIEnumerable);

我有同樣的問題,但隨后將報表和實體類移動到與WebAplication分開的另一個項目,當我這樣做時,向導顯示除DataBase Connection之外的其他選項,因此我將一個Object DataSource添加到C#Library。 然后我用這篇文章檢索報告定義並嵌入到.aspx中,希望對此有所幫助!!

我遇到了同樣的問題並遵循了這些說明(Zilong Lu回答),一旦我為報告提供了Handler並且沒有顯示全局數據源的選項,只需要連接向導。 我右鍵單擊了我的項目並單擊了構建。 在此之后我嘗試再次添加全局數據源並且連接向導沒有顯示,但是全局數據源選項確實如此。

我不確定你是否看到了我所看到的內容,但是在我看來,具有私有構造函數的類(即使使用公共靜態方法返回同一類的列表)也不會顯示在列表中。

要在Visual Studio Report New DataSet中顯示的對象數據源的標准?

將不會顯示為DataSources下拉列表中的源

幾天前我遇到了同樣的問題。 我通過為VS10安裝SP1解決了這個問題。 http://www.microsoft.com/download/en/details.aspx?id=23691

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM