Сериализуются ли свойства внутри сериализованного класса при индивидуальной вставке их в объект Session? - PullRequest
0 голосов
/ 20 июня 2019

В настоящее время я сериализую все классы и объекты одного проекта, потому что я перехожу из режима состояния сеанса asp.net InProc в режим вне процесса.

У меня есть сомнения в сценарии ниже, где у меня есть свойство с именем «myList» типа SelectList:

[Serializable]
public class MyCustomExtendedClass
{    
    public SelectList myList { get; set; }

    // Other stuff
}

Поскольку я сохраняю его значение в объекте Session, мне нужно сериализовать свойство «myList» в классе «MyCustomExtendedClass», чтобы работать в режиме состояния сеанса вне процесса.

Ниже кода фрагмента показано, как сохранить значение в объекте Session:

   MyCustomExtendedClass oResult = new MyCustomExtendedClass(param1, param2)
   Session["MyKey"] = oResult.myList;

Я сомневаюсь: автоматически ли сериализуется свойство "myList", когда я сохраняю его в объекте Session, выполняя "Session [" MyKey "] = oResult.myList"? Или мне нужно явно пометить свойство как сериализуемое, как показано ниже?

[Serializable]
public class MyCustomExtendedClass
{    
    [Serializable]
    public SelectList myList { get; set; }

    // Other stuff
}
...