2009-04-24 5 views
1

Im neuesten SVN 2.2 Build mit VS kompiliert wurde 2008 Wenn ich meine VB-Klassen Sonic.exe keine Spalten vom Typ Datum (Nicht für Datum und Uhrzeit) bauen erzeugt als "System.String". Hat jemand anderes dieses Problem gefunden und eine Lösung gefunden oder ist das ein Problem mit Subsonic?Subsonic 2.2 generiert Immobilien zu SQL Server 2008 Datum

+0

Bestätigen Sie, dass dies ein Problem ist? Ich werde gerne ein Problem einreichen, aber ich würde es lieber nicht unnötigerweise dem Heftstapel hinzufügen. Es scheint mir, dass dies ein so grundlegendes Problem ist, dass andere es erfahren müssen, aber ich sehe keine anderen Berichte. – Zapatta

+0

Dies ist immer noch ein Problem, ein 2008-Ticket wurde geschlossen, aber das schien nur Datetime2 und nicht Datum oder Zeit zu beeinflussen. –

Antwort

0
+0

Bestätigen Sie, dass dies ein Problem ist? Ich werde gerne ein Problem einreichen, aber ich würde es lieber nicht unnötigerweise dem Heftstapel hinzufügen. Es scheint mir, dass dies ein so grundlegendes Problem ist, dass andere es erfahren müssen, aber ich sehe keine anderen Berichte. - Zapatta vor 46 Sekunden – Zapatta

2

Es ist immer noch ein ungelöstes Problem, aber es ist eine einfache Lösung. Wenn Sie den SubSonic-Quellcode haben, nehmen Sie ein paar Änderungen vor.

- src \ SubSonic \ DataProviders \ SqlDataProvider.cs.
Strecken Linie # 1010 über "Fall Datumzeit" hinzufügen:

  case "date": 
       return DbType.Date; 

- src \ SubSonic \ Active \ AbsractList.cs Strecken Linie # 85 oben "else if (dbType == DbType.DateTime)" hinzufügen :

 else if (dbType == DbType.Date) 
     { 
      DateTime dX = Convert.ToDateTime(xVal); 
      DateTime dY = Convert.ToDateTime(yVal); 
      result = dX.CompareTo(dY); 
     } 

- src \ SubSonic \ CodeLanguage \ CSharpCodeLanguage.cs Around Zeile # 222 über "Fall DbType.DateTime" hinzufügen:

  case DbType.Date: 

Ich bin 99% das waren die wichtigsten Änderungen benötigt, ohne diese Änderungen die letzte Version wird nicht ordnungsgemäß unterstützt den SQL Server 2008 "DATE" -Datentyp.