亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

.NET中RDLC循環處理數據的應用方法

發布時間:2021-07-22 22:44:19 來源:億速云 閱讀:126 作者:chen 欄目:開發技術

本篇內容介紹了“.NET中RDLC循環處理數據的應用方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

當我們在使用RDLC開發報表的時候,如果數據源內容如下。

復制代碼 代碼如下:


private List<UserData> CreateDataSet()
{
    List<UserData> userDataSet = new List<UserData>();
    userDataSet.Add(new UserData() { Name = "Clark", Age = 18 });
    userDataSet.Add(new UserData() { Name = "Yaya", Age = 15 });
    return userDataSet;
}

我們可以很快速的使用RDLC里的數據表控件,來將數據呈現在報表上。

.NET中RDLC循環處理數據的應用方法

但是當客戶要求下圖的報表,要將數據源內容顯示在一行。RDLC處理這種需求就沒有那么簡單,這是因為RDLC沒有循環處理的函式可以使用。造成開發人員要組合數據,必須使用隱藏列表、在外部組合字符串…等等迂回的方式建立報表內容。但這樣的方式開發,既沒有效率而且也有很多的限制。

.NET中RDLC循環處理數據的應用方法

這個問題困擾了我好幾天,昨晚睡到一半忽然有靈感。可以使用RDLC里的Sum函式,來做數據循環的處理。

Sum函式會取得數據集中的每一筆資料,并且計算出全部數據的總和。我們可以將表達式寫為下列的函式,利用code.PushStringStack這個RDLC自定義函式,來讓Sum函式取得所有數據。這樣的寫法,就可以將數據集中的每一筆數據都交由code.PushString處理過一次。

復制代碼 代碼如下:


=Sum(code.PushString(Fields!Name.Value, Fields!Age.Value), "UserDataSet")


接著看code.PushString這個RDLC自定義函式的內部,使用了一個Static的字符串變量,來記錄每一筆數據處理之后的結果。到這邊開發人員應該可以理解,這樣的方式就是在跑循環處理數據。

復制代碼 代碼如下:


Public Shared _foreachResult As String = String.Empty

Public Shared Function PushString(userName As String, userAge As String) As Integer
    _foreachResult += userName & "(" & userAge & "), "
    Return 0
End Function


當然啦,跑完循環處理完數據,最終還是要將數據顯示在畫面上。這邊很簡單的就是建立一個code.PopString回傳。

復制代碼 代碼如下:


Public Shared Function PopString() As String
    Return _foreachResult
End Function


并且將原本的表達式改寫成為:

復制代碼 代碼如下:


=IIF(Sum(code.PushString(Fields!Name.Value, Fields!Age.Value), "UserDataSet") <> 0, "", code.PopString())


編譯并且執行之后,就可以看到在RDLC的文本框里,已經正確的顯示了客戶要求的數據格式。

.NET中RDLC循環處理數據的應用方法

“.NET中RDLC循環處理數據的應用方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

马鞍山市| 泰和县| 康定县| 荣成市| 鄂州市| 罗田县| 河津市| 涿鹿县| 泾阳县| 临朐县| 崇义县| 留坝县| 五常市| 易门县| 新巴尔虎左旗| 依安县| 关岭| 长乐市| 南陵县| 蓬莱市| 合川市| 黄大仙区| 龙井市| 柘城县| 安仁县| 班戈县| 巴青县| 醴陵市| 曲沃县| 读书| 宣威市| 祁门县| 元谋县| 蒙山县| 衢州市| 张家口市| 安顺市| 泗洪县| 兴城市| 高陵县| 邹平县|