Как бинарно сериализовать класс в переносимой библиотеке классов?

Я использую переносимую библиотеку классов в своем приложении asp.net, и при развертывании в Azure состояние сеанса необходимо сериализовать. Классы из этого PCL не имеют атрибутов SerializableAttribute, недоступных в подмножестве фреймворка. Могу ли я поместить эти классы в сеанс ASP.NET?


person rboeije    schedule 18.02.2013    source источник


Ответы (1)


Что ж, вы можете использовать один из доступных сторонних сериализаторов, которые доступны для переносимой библиотеки классов:

Оба доступны на NuGet.

person Sebastian    schedule 20.02.2013
comment
Это означает, что мне придется написать собственный поставщик состояний сеанса или как заставить поставщик состояний Azure использовать мой пользовательский сериализатор? - person rboeije; 20.02.2013
comment
Вы также можете сериализовать свой класс, преобразовать его в строку и вставить строку в сеанс. Другой вариант — написать собственный поставщик состояния сеанса, использующий ваш собственный сериализатор. - person dna; 20.02.2013
comment
@dna +1 для Json.NET. А что касается вашего комментария преобразовать его в строку и вставить строку в сеанс, я нашел следующую статью полезной с точки зрения куда поместить такую ​​логику: Обходной путь Ваши проблемы с сериализацией сеансов ASP.Net. то есть сделать адаптацию в Application_PostAcquireRequestState() и Application_PostRequestHandlerExecute(). - person Chris W. Rea; 13.06.2014