An error occurred while executing the command definition. See the inner exception for details. bbbbInnerException:aaaa System.ArgumentException: The version of SQL Server in use does not support datatype 'datetime2'.
at System.Data.SqlClient.TdsParser.TdsExecuteRPC(_SqlRPC[] rpcArray, Int32 timeout, Boolean inSchema, SqlNotificationRequest notificationRequest, TdsParserStateObject stateObj, Boolean isCommandProc)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavioR
I have a website using Entity Framework. A few months ago I added a new table, and added some columns to existing tables; everything worked fine.
Today I updated the mapping of the EDMX so the new table and the new column can be used, and added WebMethods to my services.asmx file. Since then I cannot run my site because I have that error that I cannot understand. Please explain it to me if you understand, and tell me where is my mistake.
I have not used datetime2 anywhere. There is no such datatype in my new table, nor in the columns that I added to existing tables.
The version of SQL on my PC is SQL2008 R2, on the server i have SQL2008. I do not have the option to upgrade the server to R2.
Have you tried to open your EDMX file with XML Editor and check the value of ProviderManifestToken
. It may help to change from ProviderManifestToken=”2008”
to ProviderManifestToken=”2005”
.