Свойство/поле класса может иметь анонимный тип в C# 4.0?

Как в:

public class MyClass {

  private static var MyProp = new {item1 = "a", item2 = "b"};

}

Примечание: Вышеупомянутое не компилирует, ни работает (var не может использоваться там), это только для показа моей точки.

Обновление: Просто для уточнения вопрос, я уже попытался использовать

private static dynamic MyProp = new {item1 = "a", item2 = "b"};

и это работает, но это не генерирует intellisense из-за динамического контроля типов. Я знаю, что анонимный ввод является просто приемом компилятора, таким образом, я надеялся, что мог использовать этот прием для своего преимущества путем объявления структурированного поля, не имея необходимость объявлять класс заранее (главным образом, потому что там будет только одним экземпляром этого конкретного вида поля). Я вижу теперь, когда это не возможно, но я не уверен, почему это. Если компилятор просто генерирует неявный тип для анонимного объекта, это должно быть справедливо просто, чтобы иметь компилятор, генерируют этот неявный тип для поля.

8
задан Diego 20 October 2010 в 22:38
поделиться