Mange siger at man ikke skal benytte Default. Så måske skal du se efter ASCII, eller UTF. Men dette bringer dig videre, så kan du altid analyser dig frem til hvad du ellers vil bruge.
Jeg tror han kalder Convert.ToBase64String fordi han gerne vil have MD5 hash'en tilbage som en streng. Dette kan tænkes at han bruger det sammen med en database, hvor han gemmer det hele som en nvarchar. Man kunne jo nemt gemme det som en varbinary.
De fleste eksempler man ser på nettet omkring MD5 og godkendelse af bruger, igennem database registrering af oplysninger, benytter sig af Convert.ToBase64String eksempler.
festhund...Det er helt korrekt. Jeg gemmer den som en streng i en database fordi jeg bruger den til at lave checksum af en række....Der er noget versionsstyring jeg laver.
Ville det være en bedre ide at gemme det som varbinary ?
Varbinary tager det hele som et byte[]. Så konventere du ikke noget frem og tilbage. Du kan holde det hele i dens oprindelige form.
Jeg personligt bruger mest Convert.ToBase64String. Det gør jeg kun for nemheds skyld. Det er lidt nemmere at sammenligne to strenge, end at jeg skal til at lave en løkken som løber igennem 2 arrays og sammenligner dem.
Men det er vel en smags sag, jeg har ihvertfald ikke haft problemer med Convert.ToBase64String metoden.
Men arne_v, du kan vel komme med et godt argument og eksempler, elsker når jeg lærer noget nyt omkring denne dejlige dotnet verden. So please, fill in... :-)
Det kommer jo an på mange ting... Ved du at objekt'et er en string?
(string)[Variabel] = typecasting. Du ved at variablen er en string/indeholde en gyldig string. Convert.ToString([Variabel]) = Konventering. Du forsøger at lave indholdet af variablen om til en string.
hmmm nej det har du self. ret i...men du kan vel altid overloade equals metoden og implementere din egen, således at den kigger i indholdet...
Mht. at konvertere et vilkårligt object til en streng, objektet kan være mange ting. Men jeg har bare ordnet det vha. en foreach løkke, og ToString metoden....Det ser ud til at fungere fint :)
min pointe var saamand bare at jeg kan se pointen i:
1) gemme binaert
md5.ComputeHash(data) som returnerer byte[] gemme byte[] i DB hente byte[] fra DB
2) gemme tekst
md5.ComputeHash(data) som returnerer byte[] byte[] -> String med ToBase64String gemme String i DB hente String fra DB evt. String -> byte[] med FromBase64String
men at jeg ikke helt kan se pointen i:
3) ?
md5.ComputeHash(data) som returnerer byte[] byte[] -> String med ToBase64String String -> byte[] med GetBytes gemme byte[] i DB hente byte[] fra DB evt. byte[] -> String med GetString evt. String -> byte[] med FromBase64String
Synes godt om
Ny brugerNybegynder
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.