Я пытаюсь создать метод, который возвращает ObservableCollection, предоставляя тип объекта и имя таблицы.
Метод должен использовать эту информацию для создания коллекции ObservableCollection, которая извлекает все строки из таблицы и помещает ее в предыдущую коллекцию ObservableCollection с требуемым типом объекта.
public class DatabaseManager
{
public async Task<ObservableCollection<object>> GetObjectsAsync(object object_name, string table_name)
{
Type type = object_name.GetType();
IList<PropertyInfo> props = new List<PropertyInfo>(type.GetProperties());
ObservableCollection<object> oc = new ObservableCollection<object>();
using (SqlConnection conn = new SqlConnection(Constants.ConnectionString))
{
await conn.OpenAsync();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from " + table_name;
using (SqlDataReader reader = await cmd.ExecuteReaderAsync())
{
while (await reader.ReadAsync())
{
object x = new object();
foreach (PropertyInfo prop in props)
{
// I want to create a universal object that i can add to my observable collection here.
object propValue = prop.GetValue(object_name, null);
// Code Here
}
oc.Add(x);
}
}
}
}
return oc;
}
}
Цель состоит в том, чтобы создатьметод для получения ObservableCollection из таблицы базы данных с не конкретным типом объекта.
Я был бы признателен за любую помощь / рекомендации, я мог бы ошибиться, как это сделать, но если это вообще возможнопожалуйста, скажите мне.