2009-07-30 2 views
1

У меня есть класс под названием TASKS.Как создать динамическое свойство

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

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

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

+0

(где 'TASKS' go, btw? как в «У меня есть класс под названием TASKS»). –

ответ

8

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

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

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

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

Других вариантов:

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