2012-03-09 14 views
0

私は、MySql.Data.MySqlClientプロバイダでEntity Framework 4を使用しています。Entity Framework 4のCanonical関数を使用してCurrentDateTime()およびAddDays()を取得する方法?

CurrentDateTime()のどこにhttp://msdn.microsoft.com/en-us/library/bb738563(v=vs.100).aspxが記載されていますか?

私は名前空間System.Data.Metadata.EdmとSystem.Data.Objectsを試みたが、運...

UPDATEとしました:私はちょうど私がDateTime.Nowを使用できることを発見しましたDB時間のCurrentDateTime()の代わりに。これはクエリのNOW()に変換されます。

問題は、今EntityFunctions.AddDays()が機能しないということです。これは正しいADDDATE()ではなく、AddDays()に変換されます。それは、Canonical関数がMySqlでサポートされていないことを意味しますか? (MySqlコネクタネット6.5.4)

+0

はそれが正しい聞こえます。ここにあなたのコードを入れてもいいですか? –

+0

以下を確認してください –

答えて

0

あなたの答えを見つけることができると思います。 LINQのツーエンティティの場合は、あなたが使用されます:あなたは、エンティティフレームワークを使用してMySQLサーバからsysdateを取得するには、このクエリを使用することができますSystem.Data.Objects.EntityFunctions.CreateDateTime(...)

+0

私はCurrentDateTimeにDateTime.Nowを使用できることを知りました。しかし、EntityFunctions.AddDaysを試してみると、エラーが表示されます。FUNCTION .AddDaysは存在しません。それはMySqlではうまくいきませんか? (MySqlコネクタネット6.5.4) – Leon

+0

私はクエリを見ました。正しいADDDATE()ではなく、AddDays()に変換されました。 – Leon

0

DateTime _serverDate=dbContext.CreateQuery<DateTime>("CurrentDateTime() ").AsEnumerable().First();