prasadbuddhika Ответов: 2

Сериализация свойства типа в классе


Привет

У меня есть следующий класс

[Serializable]
public class test
{
    public string Name { get; set; }
    public Type LocalType { get; set; }
}


Когда я пытаюсь сериализовать этот класс, он дает исключение

"System. RuntimeType недоступен из-за его уровня защиты. Могут быть обработаны только открытые типы." Есть ли что-то, чего мне не хватает, или это просто свойство типа не может быть сериализовано?

Заранее спасибо.

2 Ответов

Рейтинг:
2

stibee

Может быть, это тебе поможет.
http://stackoverflow.com/questions/12306/can-i-serialize-a-c-sharp-type-object[^]


Рейтинг:
0

TheGreatAndPowerfulOz

Ваш член "LocalType" возвращает System.Type. Этот тип, система.Типа, осуществляется, в частности, с системой.Объектом типа runtimetype. Что, в свою очередь, не является публичным. Поэтому свойство "LocalType"не может быть сериализовано.

Либо пометьте "LocalType" как [XmlIgnore], либо измените его на что-то, что можно сериализовать.


Dave Kreskowiak

Надо проверить даты на постах. Этому 4 года.

TheGreatAndPowerfulOz

ЛОЛ. Я искал дату в том виде, который у меня был. Что было результатом поиска в google чего-то еще. Дата не показывалась до тех пор, пока я не ответил на вопрос. Ах, ну, по крайней мере, может быть, это поможет какому-нибудь другому бедному дураку.

Richard Deeming

Возможно, вы захотите сообщить об этом в Баги и Сагги[^Это может объяснить, почему мы получаем так много новых ответов на древние вопросы. :)