Đây vẫn là một vấn đề đang chờ xử lý, nhưng đây là một cách khắc phục dễ dàng. Nếu bạn có mã nguồn SubSonic, hãy thực hiện một vài chỉnh sửa.
- src \ SubSonic \ DataProviders \ SqlDataProvider.cs.
Xung quanh dòng # 1010 ở trên "case datetime" thêm:
case "date":
return DbType.Date;
- src \ SubSonic \ ActiveRecord \ AbsractList.csAround dòng # 85 ở trên "else if (dbType ==DbType.DateTime)" thêm:
else if (dbType == DbType.Date)
{
DateTime dX = Convert.ToDateTime(xVal);
DateTime dY = Convert.ToDateTime(yVal);
result = dX.CompareTo(dY);
}
- src \ SubSonic \ CodeLanguage \ CSharpCodeLanguage.cs Dòng xung quanh # 222 ở trên "case DbType.DateTime" thêm:
case DbType.Date:
Tôi 99% đây là những thay đổi chính cần thiết, nếu không có những thay đổi này, bản phát hành cuối cùng sẽ không hỗ trợ đúng kiểu dữ liệu SQL Server 2008 "DATE".