Как динамичный новый анонимный класс?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как динамичный новый анонимный класс?

Сообщение Anonymous »

В C# 3.0 вы можете создать анонимный класс со следующим синтаксисом < /p>

var o1 = new { Id = 1, Name = "Foo" };
< /code>

Есть ли способ динамического создания этого анонимного класса с переменной?var o1 = new { Id = 1, Name = "Foo" };
var o2 = new { SQ = 2, Birth = DateTime.Now };
< /code>



Динамический пример создания:
< /p>

var o1 = DynamicNewAnonymous(new NameValuePair("Id", 1), new NameValuePair("Name", "Foo"));
var o2 = DynamicNewAnonymous(new NameValuePair("SQ", 2), new NameValuePair("Birth",
DateTime.Now));
< /code>

beacuse Мне нужно сделать: < /p>

dynamic o1 = new ExpandObject();
o1."ID" = 1;

void ShowPropertiesValue(object o)
{
Type oType = o.GetType();
foreach(var pi in oType.GetProperties())
{
Console.WriteLine("{0}={1}", pi.Name, pi.GetValue(o, null));
}
}
< /code>

Если я вызову: < /p>

dynamic o1 = new ExpandObject();
o1.Name = "123";
ShowPropertiesValue(o1);
< /code>

не может показать результат: < /p>

Name = 123
< /code>

, а также как преобразовать Expandoobject в AnonymouseType? < /p>

Type type = o1.GetType();
type.GetProperties();

Последнее, я изменяю метод showpropertiesvalue () < /p>

void ShowPropertiesValue(object o)
{
if( o is static object )

Подробнее здесь: https://stackoverflow.com/questions/374 ... mous-class
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»