Я пытаюсь написать общий метод, который преобразует DataTable в список сильно типизированных объектов.Преобразование DataTable в список сильно типизированных объектов
Код, который я работаю до сих пор есть ...
public List<T> ImportTable<T>(String fileName, String table)
{
//Establish Connection to Access Database File
var mdbData = new ConnectToAccess(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\ACCESS\" + fileName + ".mdb;");
var tableData = new List<T>();
foreach (DataRow row in mdbData.GetData("SELECT * FROM " + table).Rows)
{
tableData.Add(ConvertRowToType<T>(row));
}
return tableData;
}
public T ConvertRowToType<T>(DataRow row)
{
//??? What is the best thing to do here ???
}
Я не зациклен на этом коде, если предложения ничьих потребуют изменений в него.
Так что давайте говорить, что я называю эту функцию, проходящую в типе ...
public class mdbConcern
{
public Int32 ConcernId { get; set; }
public String Concern { get; set; }
}
И данные возвращаются в DataTable выглядит ...
ConcernID Concern
1 Law and Ethics
2 Mail
3 Business English
... ...
Что бы быть лучшим способ реализации метода ConvertRowToType (DataRow row)?
Может ли кто-нибудь показать мне, как использовать Func в качестве одного из параметров, чтобы я мог передавать некоторую информацию о карте?
Возможный дубликат http://stackoverflow.com/q/441023/490018, http://stackoverflow.com/q/5856634/490018. –