正規関数Canonical Functions

このセクションでは、すべてのデータ プロバイダーがサポートし、あらゆるクエリ テクノロジで使用されている正規関数について説明します。This section discusses canonical functions that are supported by all data providers, and can be used by all querying technologies. 正規関数は、プロバイダーが拡張することはできません。Canonical functions cannot be extended by a provider.

これらの正規関数は、プロバイダーの対応するデータ ソース機能に変換されます。These canonical functions will be translated to the corresponding data source functionality for the provider. これによって、全データ ソースに共通する形式で表現される関数を呼び出すことができます。This allows for function invocations expressed in a common form across data sources.

これらの正規関数はデータ ソースから独立しているため、正規関数の引数の型と戻り値の型は、概念モデルの型の語句で定義されます。Because these canonical functions are independent of data sources, argument and return types of canonical functions are defined in terms of types in the conceptual model. ただし、データ ソースの中には概念モデルのすべての型をサポートしていないものもあります。However, some data sources might not support all types in the conceptual model.

Entity SQLEntity SQL クエリで正規関数を使用すると、適切な関数がデータ ソースで呼び出されます。When canonical functions are used in an Entity SQLEntity SQL query, the appropriate function will be called at the data source.

すべての正規関数は、NULL が入力された場合の動作と明示的に指定されたエラー状況の両方を含んでいます。All canonical functions have both null-input behavior and error conditions explicitly specified. ストアプロバイダーはその動作に従う必要がありますが、Entity Framework ではこの動作は強制されません。Store providers should comply with that behavior, but Entity Framework does not enforce this behavior.

LINQ のシナリオでは、Entity Framework に対するクエリには、基になるデータソースのメソッドへの CLR メソッドのマッピングが含まれます。For LINQ scenarios, queries against the Entity Framework involve mapping CLR methods to methods in the underlying data source. 特定の一連のメソッドが適切にマップされるように、CLR メソッドはデータ ソースに関係なく正規関数にマップされます。The CLR methods map to canonical functions, so that a specific set of methods will correctly map, regardless of the data source.

正規関数の名前空間Canonical Functions Namespace

正規関数の名前空間は System.Data.Metadata.Edm です。The namespace for canonical function is System.Data.Metadata.Edm. System.Data.Metadata.Edm 名前空間は、自動的にすべてのクエリに含まれます。The System.Data.Metadata.Edm namespace is automatically included in all queries. ただし、System.Data.Metadata.Edm 名前空間に正規関数と同じ名前の関数を含む別の名前空間がインポートされている場合は、名前空間を指定する必要があります。However, if another namespace is imported that contains a function with the same name as a canonical function (in the System.Data.Metadata.Edm namespace), you must specify the namespace.

このセクションの内容In This Section

集計正規関数Aggregate Canonical Functions
集計 Entity SQLEntity SQL 正規関数について説明します。Discusses aggregate Entity SQLEntity SQL canonical functions.

数値演算正規関数Math Canonical Functions
数学 Entity SQLEntity SQL 正規関数について説明します。Discusses math Entity SQLEntity SQL canonical functions.

文字列正規関数String Canonical Functions
文字列 Entity SQLEntity SQL 正規関数について説明します。Discusses string Entity SQLEntity SQL canonical functions.

日付と時刻の正規関数Date and Time Canonical Functions
日付および時刻の Entity SQLEntity SQL 正規関数について説明します。Discusses date and time Entity SQLEntity SQL canonical functions.

ビット単位の正規関数Bitwise Canonical Functions
ビット単位の Entity SQLEntity SQL 正規関数について説明します。Discusses bitwise Entity SQLEntity SQL canonical functions.

空間関数Spatial Functions
空間に関する Entity SQLEntity SQL の正規関数について説明します。Discusses Spatial Entity SQLEntity SQL canonical functions.

その他の正規関数Other Canonical Functions
ビット単位、日付/時刻、文字列、数学、または集計に分類されない関数について説明します。Discusses functions not classified as bitwise, date/time, string, math, or aggregate.

関連項目See also