2012-04-03 8 views
2

Ich habe ein POCO:Dapper Oracle-Nummer (10,0) als Dezimal-Parser-Fehler zurückgegeben

public class Role 
{ 
    public Int32 Id { get; set; } 
    public string Name { set; get; } 
} 

Die Oracle-Tabelle ist Id NUMBER(10,0) und Name VARCHAR2(100 CHAR)

Dapper Einsätze gut, aber wenn ich lese die Datensätze es bringe die ID als Dezimalzahl und ich bekomme einen Parserfehler. Und NEIN, ich kann die Int32-ID nicht in Dezimal-ID in der POCO-Klasse ändern.

+0

Kannst du die Oracle 'ID NUMBER (10,0)' in 'INTEGER' ändern? oder ändern Sie die Abfrage in so etwas wie 'SELECT CAST (ID AS INTEGER) FROM ...' – SwDevMan81

+0

Sieht aus wie 'NUMBER (10,0)' ist ein 'Int64' [hier diskutiert] (http://www.devart.com /forums/viewtopic.php?t=15604). Das Zurückkonvertieren verursacht wahrscheinlich die Dezimalumwandlung. – SwDevMan81

+1

Ich bin müde und immer noch als Dezimalzahl zurück. "SELECT CAST (ID ALS INTEGER) wie \" ID \ ", NAME, DESCRIPTION, ORDINAL FROM"; – Shuaib

Antwort

0

Dank Alex habe ich ODP.net installiert und es hat funktioniert.