2016-04-14 138 views
0

我剛剛開始學習C#,並且我的問題聽起來很愚蠢......如何從數據庫中填充我的viewmodel中的列表?

如何使用我的數據庫中的數據填充我的viewmodel中的列表?

我的ViewModels:

public class TransferSpecificClientsViewModel 
{ 

    public string TransferFrom { get; set; } 
    public string TransferTo { get; set; } 
    public virtual ICollection<ClientsToTransfer> ClientsToTransferList { get; set; } 

} 

public class ClientsToTransfer 
{ 
    public bool IsSelected { get; set; } 
    public int ClientId { get; set; } 
    public int UserId { get; set; } 
    public string Name { get; set; } 

} 

和Controller可能是我需要的東西,如:

var model = (from p in db.Clients 
       select new TransferSpecificClientsViewModel() 
       { 
        // And here I need to populate the ClientsToTransferList with data from db.Clients... I think it should probably be something like 
        //ClientsToTransferList.ClientId = p.Id 
        //ClientsToTransferList.UserId = p.UserId 
        //ClientsToTransferList.Name = p.Name }); 

但在我的數據庫中的每個客戶端

我只是不知道如何使它工作......並且正在成爲C#的新手我不知道如何正確搜索我正在嘗試做什麼......

回答

1

你真的很親近。我會將virtual ICollection<ClientsToTransfer>更改爲List<ClientsToTransfer>,並按照您的想法進行選擇。

//...initialize TransferFrom and TransferTo properties of your view model 
model.ClientsToTransferList = 
      (from p in db.Clients 
      select new ClientsToTransfer() 
      { 
       ClientId = p.Id 
       UserId = p.UserId 
       Name = p.Name 
      }).ToList(); 
+1

感謝您嘗試幫助我......我還是有這個問題......我照你說的,現在我得到「無法初始化類TransferSpecificClientsViewModel,因爲它沒有實現」系統集合了IEnumerable 「無效的初始化成員聲明器」 –

+1

對不起,我選錯了類。固定。 確保您的'model'變量與您的視圖模型的類型相同。 – Jakotheshadows

+1

非常感謝!有效! (另外,我必須從select中的部分[例如ClientsToTransferList.ClientId]中刪除ClientsToTransferList。) –

相關問題