簡體   English   中英

如何從函數返回通用列表(Of T)

[英]How to Return a Generic List (Of T) from a Function

我的班級中有以下函數,我想將其作為通用列表返回。

Public Function ProductTitlePrice(Of T)() As List(Of T) Implements IProductRepository.ProductTitlePrice

    Dim v = (From F In _db.Fstock Where F.GUID = 2
        Select F.STK_NAME, F.SELL_PRICE
        ).ToList


    Return v

End Function

我得到的錯誤是...

Error   2   Value of type 'System.Collections.Generic.List(Of <anonymous type>)' cannot be converted to 'System.Collections.Generic.List(Of T)'.

基本上,我想從我的函數中返回一個帶有數據的通用列表,然后在控制器中調用此函數並將其數據映射到ViewModel。

編輯

根據下面的評論,似乎不可能。 我在UI層中擁有所有ViewModel,我要做的是.....從DAL層返回數據,然后在UI層中處理該數據。

我的DAL函數將聯接來自多個表的數據,這就是我想依賴ViewModels的原因。

例如,如果我在DAL中的函數具有以下代碼

var query = from ug in ent.userGroups
            join u in ent.Users on ug.OwnerUserId = ug.userID
            select new
            {
                Name = u.UserName,
                Id = u.userID
                Group = ug.GroupName
            };

如何從我的函數返回查詢 ,然后在我的UI層中處理輸出。

我得到了以下解決方案。

  • Styxxy建議的DTO的新項目

  • 然后在UL中使用Automapper將DTO映射到我的ViewModels。

這是來源: http//bengtbe.com/blog/2009/04/14/using-automapper-to-map-view-models-in-asp-net-mvc/

暫無
暫無

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

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