2017-07-11 4 views
0

Wie setze ich Array auf Varchar (50)?Array auf Varchar setzen

Ich verwende C# und SQL Server.

unsigned char un32DBSeqNumber[31] 

cmd.Parameters.AddWithValue("@CommandType",un32DBSeqNumber[1]); 

würde ich un32DBSeqNumber[1]-un32DBSeqNumber[31] zu varchar gesetzt.

+0

Können Sie uns bitte die gesamte Methode zeigen, die Sie gerade bearbeiten? – mjwills

+0

Was ist der Typ von 'un32DBSeqNumber'? 'byte []'? 'char []'? Was enthält es? Ihre Frage ist nicht so sehr, wie Sie es in ein 'VARCHAR (50)' bringen, sondern wie Sie dieses Array in eine 'Zeichenkette' konvertieren. 'Encoding.ASCII.GetString' könnte ein Anfang sein - aber das macht Annahmen über die Codierung. –

+0

@JeroenMostert Bearbeitet - unsigned char – Safa

Antwort

0

Ich würde un32DBSeqNumber [1] auf un32DBSeqNumber [31] zu varchar setzen.

Es ist nicht ganz klar, was das bedeutet, wollen Sie den Bereich der Zeichen in eine Zeichenfolge konvertieren?

string un32DBSeqNumberStr = new String(ubn32DBSeqNumber, 1, 30); 
cmd.Parameters.Add("@CommandType", SqlDbType.Varchar).Value = un32DBSeqNumberStr; 
+0

Danke - aber un32DBSeqNumber ist unsigned und String ist signiert. – Safa

+0

Ich benutze diesen Code 'String un8Params = neuer String (reinterpret_cast (un32DBSeqNumber), 1,30);' aber dieser Code ist sehr schlecht. – Safa