정리중/C# & .NET & Web

[.NET&C#] 구조체를 세션에 저장 할 경우 주의사항

위즈 2005. 6. 16. 01:20

구조체 또는 클래스를 선언해서 세션에 저장 할 경우 발생하는 오류입니다.

세션 상태를 serialize할 수 없습니다. 세션 상태 모드가 'StateServer' 또는 'SQLServer'일 때는 serialize할 수 없는 개체나 MarshalByRef 개체는 사용할 수 없습니다.

원인

세션 상태를 serialize할 수 없습니다. 세션 상태 모드가 'StateServer' 또는 'SQLServer'일 때는 serialize할 수 없는 개체나 MarshalByRef 개체는 사용할 수 없습니다.

해결방법

구조체 또는 클래스 선언 시 앞쪽에 [Serializable] 이라고 넣어 줌으로서 직렬화 가능 인스턴스로 선언되게 됩니다.

예를 들면

변경전 : public struct wizpekr { ......... }

변경후 : [Serializable] public struct wizpekr { ......... }
이상 위즈였습니다.