2013-07-11 2 views
0

Я использую динамическое ключевое слово C#, и у меня есть экземпляр, где мне нужно установить значение свойства.Как создать подтип внутри динамического класса?

Однако для этого свойства требуется тип, к которому у меня нет доступа, поскольку я сгенерировал сборку в памяти из WSDL.

Как создать экземпляр свойства динамически?

ответ

1

Нет такой вещи, как экземпляр свойства; есть:

  • экземпляр объекта
  • , который имеет элементы (которые могут быть динамическими в данном случае)
  • , к которому вы хотите присвоить значение

Если вы не» t знать тип значения заранее, вам нужно будет создать объект с комбинацией отражения (от типа) и, возможно, динамическим. Последнее зависит от того, является ли базовый объект фактически динамическим, а также регулярным типом, открытым через динамический API. Аналогично, можете ли вы присвоить значение свойству через отражение - или вы используете должно использовать динамический API - зависит от того же. К счастью, есть такие инструменты, как FastMember, которые позволяют вам обращаться к произвольным членам (с именами, известными только во время выполнения, а не для компиляции) одинаково для этих двух случаев. Так что, если сценарий сложный, возможно, дайте ему вихрь.

+0

Да, плохая формулировка с моей стороны. Я имел в виду экземпляр типа, открытого этим свойством. Спасибо за отзыв на FastMember, я проверю его. Я также видел Fasterflect и читаю на нем сейчас. –

Смежные вопросы