別のシステムからの入力として受け取るDataTableから「IEnumerable」を生成する必要があります。次のコードは、ASP.NET 4.6.1で機能しました。DataTableをIEnumerableに変換する<T>(ASP.NET Core 2.0)
public static IEnumerable<UserAssignmentDto> StaffAssignmentsUsingStoredProcedure(System.Data.DataTable dataTable)
{
var data = dataTable.AsEnumerable().Select(row =>
new UserAssignmentDto
{
Id = ((string)row["AssignmentNumber"]),
Position = (string) row["EsrPositionTitle"],
});
return data;
}
ただし、 'DataTable'には、ASP.NET Core 2.0で 'AsEnumerable'の定義が含まれなくなりました。
私が必要とする 'IEnumerable'を生成する最も効率的な方法は何でしょうか?
は、forループを使用してDataTableの行を反復処理し、 –
「dataTable.Rows.Select(...);」と言うだけでいいですか? "item"がオブジェクトの場合、OfType <> '' dataTable.Rows.OfTypeを追加できます。().Select(...); '' –