簡體   English   中英

使用 Dapper 一對多映射(一個對象的兩個列表)

[英]Mapping one to many with Dapper (Two list with one object)

我有兩個列表的學生對象。我想從存儲過程中檢索學生列表。如何使用 dapper 獲取包含兩個列表的學生對象列表。

公共類學生{ public int StudentId { get; 放; }

public string RefNo { get; set; }

public int StudentModeId { get; set; }

public string FullName { get; set; }

public string KnownName { get; set; }

public List<StudentAttachment> StudentAttachments { get; set; }
public List<StudentExpenses> StudentExpenceses { get; set; }

}

您可以使用稱為QueryMultiple 的東西。

如果您試圖有效地從 1 個 sproc 返回 2 個列表,然后將它們填充到 2 個單獨的列表中,您可以執行以下操作:

 var parameters = new DynamicParameters();
 parameters.Add("@myParam1", myParam1);
 parameters.Add("@myParam2", myParam2);

 string myQuery = "Your query here";
 var yourFirstList = new List<YourListType>();
 var yourSecondList = new List<YourSecondListType>();

 using (var multi = db.QueryMultiple(myQuery, parameters))
 {
     yourFirstList = multi.Read<YourListType>().ToList();
     yourSecondList = multi.Read<YourSecondList>().ToList();
 }

您必須確保知道返回結果集的順序才能執行此操作,即您的第一個列表是第一個列表,第二個列表是您的第二個列表類型。

暫無
暫無

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

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