Những gì tôi muốn làm là một cái gì đó như thế này:C# Phản ánh: Làm thế nào để có được loại Nullable <int>?
switch(myObject.GetType().GetProperty("id"))
{
case ??:
// when Nullable<Int32>, do this
case ??:
// when string, do this
case ??:
// when Nullable<bool>, do this
đường gì dưới object.GetType() sẽ có tên chuỗi của các kiểu dữ liệu mà tôi có thể so sánh bằng một tuyên bố trường hợp? Tôi cần phải biết loại vì vậy tôi có thể có một trong nhiều Convert.ToInt32 (chuỗi) mà sẽ thiết lập giá trị của myObject bằng cách sử dụng Reflection.
này gần như chắc chắn làm những điều sai trái. Tại sao bạn không thể tận dụng lợi thế của đa hình, thay vì sử dụng một tuyên bố chuyển đổi khổng lồ? –
Nếu bạn đang đề xuất tạo một số hàm với các kiểu tham số khác nhau, tôi có thể. Trong trường hợp này, tôi đang sao chép một tập các thuộc tính của các kiểu khác nhau từ một đối tượng này sang một đối tượng khác, trong đó một kiểu luôn luôn là một kiểu chuỗi. Vì vậy, tôi cần phải chuyển đổi giá trị để gán nó. Điều đó và tôi có rất ít kinh nghiệm với Reflection. –
@CodyGray anh ấy có thể đang làm một cái gì đó liên quan đến sự phản ánh, nói rằng viết ORM của riêng mình. Hoặc viết một serializer tùy chỉnh cho tất cả các DAO này, bạn không bao giờ biết. – nawfal