ホームページ > バックエンド開発 > C++ > 「LINQ to Entities はメソッド 'Double.Parse' を認識しません」エラーを解決するにはどうすればよいですか?

「LINQ to Entities はメソッド 'Double.Parse' を認識しません」エラーを解決するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-28 22:10:11
オリジナル
230 人が閲覧しました

How to Resolve the

エラー説明:「LINQ to Entities は 'Double Parse(System.String)' メソッドを認識しないため、このメソッドはストア式に変換できません」

このエラーは、Entity Framework のデータベース エンジンでサポートされていないメソッドを含む LINQ 式を実行しようとすると発生します。この場合、エラーの原因となるメソッドは Double.Parse(string) です。

問題の詳細

提供されたコードでは、次のステートメントでエラーが発生します:

Entity Framework は、LINQ 式を SQL クエリに変換し、データベース上で実行します。ただし、Double.Parse メソッドは標準 SQL 関数ではないため、SQL に直接変換できません。

カスタム関数定義

この問題を解決するには、エンティティでカスタム関数を定義できます。同等の SQL 式に変換できるフレームワーク モデル。この場合、ParseDouble という関数を定義します。

EDMX ファイルの Entity-SQL 定義

モデルの *.edmx ファイルを開き、 を見つけます。要素。 内に次の関数定義を追加します。要素:

ObjectContext クラスのカスタム メソッド

次に、ObjectContext クラスの部分クラスを作成し、次のメソッドをそれに追加します:

Updated LINQ 式

カスタム関数を定義して実装したら、LINQ 式を更新できます。これを使用するには:

これで、LINQ 式はデータベース エンジンで実行できる SQL クエリに正常に変換されるはずです。

以上が「LINQ to Entities はメソッド 'Double.Parse' を認識しません」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート