私はこのクエリを実行しようとしています:
DateTime DDate=DateTime.Today; //Today's date without Time
var v= db.measurements.Where(m => EntityFunctions.TruncateTime(m.InDate) == DDate);
時間部分を無視して、これら 2 つの日付が等しいオブジェクトを返すだけです。
しかし、私は受け取ります:
{"FUNCTION [データベース].TruncateTime が存在しません"}
スタックトレース:
at MySql.Data.MySqlClient.MySqlStream.ReadPacket()
at MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int64& insertedId)
at MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId, Int32& affectedRows, Int64& insertedId)
at MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force)
at MySql.Data.MySqlClient.MySqlDataReader.NextResult()
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
at MySql.Data.Entity.EFMySqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior)
私は使用しています:
- C# ビジュアル スタジオ 2010
- EntityFramework 4 データベースが最初
- ネットワークフレームワーク 4
- MYSQL サーバー 5.6
MySQL.Data および MySQL.Data.Entity のバージョンは 6.6.5.0 です。
TruncateTime は MySQL でサポートされています。
この人にも同じことがありました。