Avatar billede opcm_ip Nybegynder
21. maj 2008 - 08:16 Der er 3 kommentarer og
1 løsning

Gemme klasse instans i database

Jeg har en instans af en klasse som indeholder en masse information. Denne instans vil jeg gerne gemme i en database og kunne tage frem på et senere tidspunkt og arbejde videre med - HOW TO? Hvilekn data type skal jeg bruge i batabasen hvis det kan lade sig gøre, og hvordan typecaster eller serialisere jeg min instans?
Avatar billede arne_v Ekspert
21. maj 2008 - 15:15 #1
public class Ser<T>
    {
        public static byte[] Object2ByteArray(T o)
        {
            MemoryStream ms = new MemoryStream();
            BinaryFormatter bf = new BinaryFormatter();
            bf.Serialize(ms, o);
            return ms.ToArray();
        }
        public static string Object2String(T o)
        {
            return Convert.ToBase64String(Object2ByteArray(o));
        }
        public static T ByteArray2Object(byte[] b)
        {
            MemoryStream ms = new MemoryStream(b);
            BinaryFormatter bf = new BinaryFormatter();
            ms.Position = 0;
            return (T)bf.Deserialize(ms);
        }
        public static T String2Object(string s)
        {
            return ByteArray2Object(Convert.FromBase64String(s));
        }
    }
Avatar billede opcm_ip Nybegynder
22. maj 2008 - 05:59 #2
Cool, lige i øjet. Send et svar!
Avatar billede brian0905 Nybegynder
22. maj 2008 - 10:50 #3
Kræver vel at T er tagged med [Serializable] ?
Avatar billede arne_v Ekspert
22. maj 2008 - 14:41 #4
svar

jeps
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester