Sorry wegen der Versp�tung, mein VisualStudio so nen Schuss und faselt
irgend etwas von "MS Development Environment has not been installed for the
current user. Please run setup to install the application.". Ich kann es
100mal installieren, der Fehler bleibt :(

So musste ich das Beispiel von Hand erstellen, was einwenig l�nger dauerte.


###########################

namespace SerializeExample
{
  using System;
  using System.Data;
  using System.Data.SqlClient;
  using System.IO;
  using System.Runtime.Serialization.Formatters.Binary;


  [Serializable()]
  public class User
  {
    private int    _id    = -1;
    private string  _name  = "";

    public int ID
    {
      get { return _id; }
    }

    public string Name
    {
      get { return _name; }
    }

    public User(int userId, string userName)
    {
      _id    = userId;
      _name  = userName;
    }
  }

  public class Example
  {
    private static SqlDataAdapter sqlAdapter = null;

    [STAThread]
    public static void Main(string[] args)
    {
      // SERIALIZATION

      // create a user instance to serialize
      User userExample = new User(12, "Hans Muster");
      MemoryStream writeStream = new MemoryStream();

      // serialize the created user instance
      BinaryFormatter serializer = new BinaryFormatter();
      serializer.Serialize(writeStream, userExample);
      writeStream.Close();


      // create a sql server connection and get the user data
      DataSet userData = GetUserData();

      // create a new row to fill the data
      DataRow newRow = userData.Tables[0].NewRow();
      newRow[0] = writeStream.ToArray();
      userData.Tables[0].Rows.Add(newRow);

        // write binary data
      sqlAdapter.Update(userData);



      // DESERIALIZATION

      // get the serialized user data from database
      DataSet serializedData = GetUserData();
      MemoryStream serializedUserData = new
MemoryStream((byte[])serializedData.Tables[0].Rows[0][0]);

      // deserialize user data object
      BinaryFormatter deserializer = new BinaryFormatter();
      User deserializedUser =
(User)deserializer.Deserialize(serializedUserData);

      Console.WriteLine("UserId: {0} - UserName: {1}", deserializedUser.ID,
deserializedUser.Name);

    }


    private static DataSet GetUserData()
    {
      // create connection to db server
      SqlConnection sqlConnection = new SqlConnection("server=(local);"
        + "Integrated Security=yes;database=Test;");
      sqlAdapter = new SqlDataAdapter("SELECT * FROM SerializationExample",
sqlConnection);

      // create result dataset
      DataSet userData = new DataSet();
      sqlAdapter.InsertCommand = new SqlCommand("INSERT INTO
SerializationExample "
        + "(UserData) Values(@UserData)", sqlConnection);
      sqlAdapter.InsertCommand.Parameters.Add("@UserData", SqlDbType.Binary,
8000, "UserData");

      sqlAdapter.Fill(userData);

      return userData;
    }
  }
}

###########################

Gruss Silvan


-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]Im Auftrag von Andreas
Rudischhauser (N)
Gesendet: Mittwoch, 25. September 2002 12:21
An: aspDEdotnet
Betreff: [aspdedotnet] AW: Speichern von Klassen


Mehr...?

-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]] Im Auftrag von Silvan
Gehrig
Gesendet: Mittwoch, 25. September 2002 11:37
An: aspDEdotnet
Betreff: [aspdedotnet] AW: Speichern von Klassen


Japs, implizite [Attribute] oder explizite [ISerializable interface]
Serialisierung.

Gruss Silvan


-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]Im Auftrag von Andreas
Rudischhauser (N)
Gesendet: Mittwoch, 25. September 2002 00:51
An: aspDEdotnet
Betreff: [aspdedotnet] Speichern von Klassen


Ich mache mir die die ganze Zeit gedanke zum Speichern meiner User
Klasse.

Ich kann nat�rlich die .Load und .Save Methode meiner Klasse selbst
programmieren mit INSERT INTO und dann jede Variable durchgehen, aber
das ist doch eigentlich bl�d...

Es w�re doch viel besser wenn ich der Datenbank das komplette Objekt
abgeben k�nnte.

Gibt�s dazu schon Ans�tze?


| [aspdedotnet] als [EMAIL PROTECTED] subscribed
| http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv Sie
| k�nnen sich unter folgender URL an- und abmelden:
| http://www.dotnetgerman.com/listen/aspDEdotnet.asp

__________________________________________________________________



Gesendet von Yahoo! Mail - http://mail.yahoo.de

Yahoo! pr�sentiert als offizieller Sponsor das Fu�ball-Highlight des

Jahres: - http://www.FIFAworldcup.com


| [aspdedotnet] als [EMAIL PROTECTED] subscribed
| http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv Sie
| k�nnen sich unter folgender URL an- und abmelden:
| http://www.dotnetgerman.com/listen/aspDEdotnet.asp


| [aspdedotnet] als [EMAIL PROTECTED] subscribed
| http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.dotnetgerman.com/listen/aspDEdotnet.asp

__________________________________________________________________



Gesendet von Yahoo! Mail - http://mail.yahoo.de

M�chten Sie mit einem Gru� antworten? http://grusskarten.yahoo.de


| [aspdedotnet] als [email protected] subscribed
| http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.dotnetgerman.com/listen/aspDEdotnet.asp

Antwort per Email an