3 Stimmen

SQL-Binärfeld in C# lesen

Mögliches Duplikat:
SELECT @@DBTS mit Linq to SQL
Sql binary to c# - Wie erhält man das SQL-Binäräquivalent von binary in c#

Ich habe eine SQL-Tabelle mit einer binären Spalte. Sie enthält einige Daten im Binärformat.

e.g. 0x9A8B9D9A002020202020202020202020

Ich verwende LINQ-Kontext, um die Daten aus dieser Tabelle abzurufen. Kann mir jemand helfen, dies zu erreichen. Hier ist ein Beispielcode, den ich verwende,

IEnumerable<byte[]> query = context
                .ExecuteQuery<byte[]>("select empPWD from Employee where employeeId = E32");

Wenn ich diesen Code ausführe, gibt es eine Fehlermeldung, als ob ich etwas Ähnliches wie Mapping machen müsste.

Die genaue Fehlermeldung;

Der Typ 'System.Byte[]' muss einen Standardkonstruktor (ohne Parameter) deklarieren Konstruktor deklarieren, um bei der Zuordnung konstruiert zu werden.

Bitte helfen Sie mir, wenn jemand dies weiß.

0voto

user1429080 Punkte 8966

Könnten Sie es umformulieren in:

IEnumerable<System.Data.Linq.Binary> query = 
           context.Employees.Where(e => e.employeeId == "E32").Select(e => e.empPWD);

Ich denke, das sollte funktionieren (vorausgesetzt, Ihr Kontext enthält eine Tabellenklasse Employees). Um auf die Byte[] zuzugreifen, verwenden Sie ToArray() für jede Instanz des Typs System.Data.Linq.Binary.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X