Мне нужно получить тип всех членов, присутствующих в классе.Получение типов всех членов класса
public class Order
{
public int OrderID { get; set; }
public int EmployeeID { get; set; }
public string CustomerID { get; set; }
public DateTime OrderDate { get; set; }
public bool Verified { get; set; }
public Order(int orderId, int empId, string custId, DateTime orderDate, bool verify)
{
this.OrderID = orderId;
this.EmployeeID = empId;
this.CustomerID = custId;
this.OrderDate = orderDate;
this.Verified = verify;
}
}
и значение для класса я добавил через список
List<dynamic> dy = new List<dynamic>();
dy.Add(new { OrderID = 11, EmployeeID = 5, CustomerID = "ALFKI", OrderDate = new DateTime(2015,01, 10), Verified = true });
dy.Add(new { OrderID = 12, EmployeeID = 4, CustomerID = "CDSAW", OrderDate = new DateTime(2015, 02, 12), Verified = true });
dy.Add(new { OrderID = 13, EmployeeID = 6, CustomerID = "ASDFG", OrderDate = new DateTime(2015, 03, 13), Verified = true });
dy.Add(new { OrderID = 14, EmployeeID = 3, CustomerID = "XSDAF", OrderDate = new DateTime(2015, 04, 14), Verified = false });
dy.Add(new { OrderID = 15, EmployeeID = 2, CustomerID = "MNHSD", OrderDate = new DateTime(2015, 05, 15), Verified = true });
dy.Add(new { OrderID = 16, EmployeeID = 1, CustomerID = "OKJHG", OrderDate = new DateTime(2015, 06, 16), Verified = false });
return dy;
Для получения типов полей, я попытался с помощью следующего кода.
Type type = dataSource.GetElementType();
Type t = typeof(object);
t = type.GetProperty("OrderDate").PropertyType;
Его выброс ошибки с нулевым выражением.
Здесь OrderDate - объект DateTime.
Type type = dataSource.GetType();
Эта строка возвращает System.object.
При попытке получить тип поля OrderDate.
type.GetProperty(filterString).PropertyType;
возвращает Null, как исправить эту проблему.
Интернет: https://dotnetfiddle.net/zTYJGU
Вы означает, как описано здесь? http://stackoverflow.com/questions/6536163/how-to-list-all-variables-of-class – Essigwurst
Это похоже на неправильное использование 'dynamic' ... –
вы можете определить, что такое' dataSource'? –