DevTrain Startseite Visual Studio 1 Magazin  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: ASP.NET2.0 | Thema: AW: SQLCommand in Session speichern | Von: Markus Peklo ( 01.08.2007 08:35)

Selbst über eine eigens dafür erstellte Klasse in der ich den SQLCommand zwischenspeicher bekomm ich einen Fehler:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization;
using System.IO;
using System.Xml.Serialization;

[Serializable]
public class SaveSQLCommand
{
private SqlCommand mySQLCom;

public SaveSQLCommand()
{
}

public SqlCommand SQLCom
{
get
{
return mySQLCom;
}
set
{
this.mySQLCom = value;
}
}
}


Die Fehlermeldung lautet:

Serverfehler in der Anwendung /*.
--------------------------------------------------------------------------------

Der Sitzungszustand kann nicht serialisiert werden. Im 'StateServer'- und 'SQLServer'-Modus serialisiert ASP.NET die Sitzungszustandsobjekte, sodass nicht serialisierbare Objekte bzw. MarshalByRef-Objekte nicht zulässig sind. Diese Beschränkung gilt auch, wenn eine ähnliche Serialisierung im Custom-Modus durch den benutzerdefinierten Sitzungszustandsspeicher ausgeführt wird.
Beschreibung: Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde.

Ausnahmedetails: System.Web.HttpException: Der Sitzungszustand kann nicht serialisiert werden. Im 'StateServer'- und 'SQLServer'-Modus serialisiert ASP.NET die Sitzungszustandsobjekte, sodass nicht serialisierbare Objekte bzw. MarshalByRef-Objekte nicht zulässig sind. Diese Beschränkung gilt auch, wenn eine ähnliche Serialisierung im Custom-Modus durch den benutzerdefinierten Sitzungszustandsspeicher ausgeführt wird.

Quellfehler:

Beim Ausführen der aktuellen Webanforderung wurde einen unbehandelte Ausnahme generiert. Informationen über den Ursprung und die Position der Ausnahme können mit der Ausnahmestapelüberwachung angezeigt werden.

Stapelüberwachung:

[SerializationException: Der Typ System.Data.SqlClient.SqlCommand in Assembly System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 ist nicht als serialisierbar gekennzeichnet.]
System.Runtime.Serialization.FormatterServices.InternalGetSerializableMembers(RuntimeType type) +2317909
System.Runtime.Serialization.FormatterServices.GetSerializableMembers(Type type, StreamingContext context) +245
System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitMemberInfo() +88
System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitSerialize(Object obj, ISurrogateSelector surrogateSelector, StreamingContext context, SerObjectInfoInit serObjectInfoInit, IFormatterConverter converter, ObjectWriter objectWriter) +305
System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.Serialize(Object obj, ISurrogateSelector surrogateSelector, StreamingContext context, SerObjectInfoInit serObjectInfoInit, IFormatterConverter converter, ObjectWriter objectWriter) +50
System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Write(WriteObjectInfo objectInfo, NameInfo memberNameInfo, NameInfo typeNameInfo) +411
System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Serialize(Object graph, Header[] inHeaders, __BinaryWriter serWriter, Boolean fCheck) +489
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Stream serializationStream, Object graph, Header[] headers, Boolean fCheck) +131
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Stream serializationStream, Object graph) +12
System.Web.Util.AltSerialization.WriteValueToStream(Object value, BinaryWriter writer) +2020

[HttpException (0x80004005): Der Sitzungszustand kann nicht serialisiert werden. Im 'StateServer'- und 'SQLServer'-Modus serialisiert ASP.NET die Sitzungszustandsobjekte, sodass nicht serialisierbare Objekte bzw. MarshalByRef-Objekte nicht zulässig sind. Diese Beschränkung gilt auch, wenn eine ähnliche Serialisierung im Custom-Modus durch den benutzerdefinierten Sitzungszustandsspeicher ausgeführt wird.]
System.Web.Util.AltSerialization.WriteValueToStream(Object value, BinaryWriter writer) +2124
System.Web.SessionState.SessionStateItemCollection.WriteValueToStreamWithAssert(Object value, BinaryWriter writer) +54
System.Web.SessionState.SessionStateItemCollection.Serialize(BinaryWriter writer) +852
System.Web.SessionState.SessionStateUtility.Serialize(SessionStateStoreData item, Stream stream) +256
System.Web.SessionState.SessionStateUtility.SerializeStoreData(SessionStateStoreData item, Int32 initialStreamSize, Byte[]& buf, Int32& length) +85
System.Web.SessionState.SqlSessionStateStore.SetAndReleaseItemExclusive(HttpContext context, String id, SessionStateStoreData item, Object lockId, Boolean newItem) +145
System.Web.SessionState.SessionStateModule.OnReleaseState(Object source, EventArgs eventArgs) +713
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +167
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +117

--------------------------------------------------------------------------------
Versionsinformationen: Microsoft .NET Framework-Version:2.0.50727.42; ASP.NET-Version:2.0.50727.210


Markus

Betreff Von Datum
AW: AW: SQLCommand in Session speichern
Es ist erstens absolut NICHT sinnvoll ein Command-Objekt in eine Session zu legen und 2tens hängt am Command die Connection dran und dadurch wirds vermutlich ein Problem bei der Serialisierung...
Bernhard Grojer 01.08.2007 10:43
AW: AW: AW: SQLCommand in Session speichern
Hast du mal versucht das ding ins ViewState zu schreiben. Dann hast du es zumindest solang du dich auf der aktuelle Seite befindest.
Philipp Barnau 28.09.2007 16:42
AW: AW: AW: AW: SQLCommand in Session speichern
Selbe Sache ... Selbes Problem. Viewstate wird serialisiert. Das wirst nicht hinbekommen mit Command und Connection.<br><br>Nochmals: Das macht NULL Sinn, soetwas wegzuspeichern und geht gegend jedes...
Bernhard Grojer 28.09.2007 21:52

Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Visual Studio 1 Magazin

© Copyright 2003 ppedv AG