Het is nog steeds een hangend probleem, maar het is een gemakkelijke oplossing. Als je de SubSonic-broncode hebt, voer dan een paar bewerkingen uit.
-- src\SubSonic\DataProviders\SqlDataProvider.cs.
Rond regel #1010 boven "case datetime" toevoegen:
case "date":
return DbType.Date;
-- src\SubSonic\ActiveRecord\AbsractList.csAround regel #85 boven "else if (dbType ==DbType.DateTime)" toevoegen:
else if (dbType == DbType.Date)
{
DateTime dX = Convert.ToDateTime(xVal);
DateTime dY = Convert.ToDateTime(yVal);
result = dX.CompareTo(dY);
}
-- src\SubSonic\CodeLanguage\CSharpCodeLanguage.csAround regel #222 boven "case DbType.DateTime" toevoegen:
case DbType.Date:
Ik ben voor 99% dit waren de belangrijkste wijzigingen die nodig waren, zonder deze wijzigingen zal de laatste release het gegevenstype "DATE" van SQL Server 2008 niet goed ondersteunen.