Unable to serialize the session state.

B

Bill L

Hi guys,

Because of restarting application after new DLLs installed into \Bin folder
, we move the session to StateServer, everything'a alright except when I try
to write any simple hash table into session. The Error message shows like
----------------------------------------------------------------------------
-----
Unable to serialize the session state. Please note that non-serializable
objects or MarshalByRef objects are not permitted when session state mode is
'StateServer' or 'SQLServer'.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.

Exception Details: System.Web.HttpException: Unable to serialize the session
state. Please note that non-serializable objects or MarshalByRef objects are
not permitted when session state mode is 'StateServer' or 'SQLServer'.

Source Error:


An unhandled exception was generated during the execution of the current web
request. Information regarding the origin and location of the exception can
be identified using the exception stack trace below.


Stack Trace:
----------------------------------------------------------------------------
------

After reading some posts here and MSDN articles and makes me even more
confused because Hashtable object is ISerializable , and all things write
into hashtable are just strings, so should I do something else? or have to
manually serialize hashtable object by mysel ?

Thanks

Bill
 
B

Bill L

After reading some posts here and MSDN articles and makes me even more
confused because Hashtable object is ISerializable , and all things write
into hashtable are just strings, so should I do something else? or have to
manually serialize hashtable object by mysel ?

Thanks

Bill

Here is stack info,

[SerializationException: The type QMBI.General.Include.AccessedPage in
Assembly QMBI.General.Include, Version=0.0.0.0, Culture=neutral,
PublicKeyToken=null is not marked as serializable.]

System.Runtime.Serialization.FormatterServices.InternalGetSerializableMember
s(RuntimeType type, Boolean excludeNonSerializable) +853

System.Runtime.Serialization.FormatterServices.GetSerializableMembers(Type
type, StreamingContext context) +300

System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitMemberInf
o() +103

System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitSerialize
(Object obj, ISurrogateSelector surrogateSelector, StreamingContext context,
SerObjectInfoInit serObjectInfoInit, IFormatterConverter converter) +493

System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.Serialize(Obj
ect obj, ISurrogateSelector surrogateSelector, StreamingContext context,
SerObjectInfoInit serObjectInfoInit, IFormatterConverter converter) +48

System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Serialize(Object
graph, Header[] inHeaders, __BinaryWriter serWriter, Boolean fCheck) +683

System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Str
eam serializationStream, Object graph, Header[] headers, Boolean fCheck)
+136
System.Web.Util.AltSerialization.WriteValueToStream(Object value,
BinaryWriter writer) +1621

[HttpException (0x80004005): Unable to serialize the session state. Please
note that non-serializable objects or MarshalByRef objects are not permitted
when session state mode is 'StateServer' or 'SQLServer'.]
System.Web.Util.AltSerialization.WriteValueToStream(Object value,
BinaryWriter writer) +1711
System.Web.SessionState.SessionDictionary.Serialize(BinaryWriter writer)
+148
System.Web.SessionState.StateClientManager.Serialize(SessionStateItem
item, Stream stream) +146

System.Web.SessionState.OutOfProcStateClientManager.System.Web.SessionState.
IStateClientManager.Set(String id, SessionStateItem item, Boolean inStorage)
+121
System.Web.SessionState.SessionStateModule.OnReleaseState(Object source,
EventArgs eventArgs) +465

System.Web.SyncEventExecutionStep.System.Web.HttpApplication+IExecutionStep.
Execute() +60
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&
completedSynchronously) +87



seems .net do serialization for the hashtable object but the stream object
is MarshalByRefObject, then the error occurs... what can I do to fix that ?

Bill
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,051
Latest member
CarleyMcCr

Latest Threads

Top