質問: 私は2008年のデータベースに対してエンティティフレームワークモデルを構築しました。 2008年のデータベースに対しては、すべて問題なく動作します。 2005データベースのエンティティを更新しようとすると、このエラーが発生します。 ``` The version of SQL Server in use does not support datatype 'datetime2 ``` データベースを構築したとき、私は特に2008の機能を使用しませんでした。コードにdatetime2への参照が見つかりません。そして、その列はデータベースで "datetime"として定義されています。
回答: 簡単なグーグルが解決策のように見えるものを私に指摘します。 ファイルエディタでEDMXを開きます(またはVisual Studioの場合は[開く]をクリックし、[XMLエディタ]を選択します)。一番上にはストレージモデルがあり、それにはProviderManifestTokenという属性があります。これは値2008を持っているはずです。それを2005に変更して、再コンパイルすればすべてうまくいきます。 注:データベースからモデルを更新するたびにこれを実行する必要があります。