Как создать динамическое свойство - PullRequest
1 голос
/ 30 июля 2009

У меня есть класс под названием ЗАДАЧИ.

Я хочу, чтобы одно свойство класса было достаточно динамичным для обработки структурных изменений в строгом типе.например ....

Class MyClass
 {
    public [mychangingProperty] - can be any strongly typed class....
 }

Как это возможно?

Ответы [ 2 ]

8 голосов
/ 30 июля 2009

Он не может быть строго типизированным и динамичным; Есть в основном противоположности.

Одним из вариантов здесь могут быть дженерики:

class MyClass<T> {
    public T Value {get;set;}
}

т.е. имеют MyClass<Foo> и MyClass<Bar>Foo Value и Bar Value соответственно).

Другие опции:

  • использовать интерфейс / базовый класс, который описывает общую функциональность между значениями
  • используйте объект и выполняйте кастование / отражение и т. Д. Самостоятельно
  • использовать C # 4.0 и dynamic (еще не выпущено ...)
0 голосов
/ 30 июля 2009

наверное, если я правильно понимаю, Вы хотите использовать Generics

...