ObjectContext.ExecuteFunction 方法

定義

多載

ExecuteFunction(String, ObjectParameter[])

執行資料來源中所定義和以概念模型表示的預存程序或函式、捨棄函式傳回的任何結果,然後傳回受執行所影響的資料列數目。

ExecuteFunction<TElement>(String, ObjectParameter[])

使用指定的參數,執行資料來源中所定義且在概念模型中有所對應的預存程序或函式。 傳回具型別的 ObjectResult<T>

ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[])

使用指定的參數和合併選項,執行資料來源中所定義和以概念模型表示之指定的預存程序或函式。 傳回具型別的 ObjectResult<T>

ExecuteFunction(String, ObjectParameter[])

執行資料來源中所定義和以概念模型表示的預存程序或函式、捨棄函式傳回的任何結果,然後傳回受執行所影響的資料列數目。

public:
 int ExecuteFunction(System::String ^ functionName, ... cli::array <System::Data::Objects::ObjectParameter ^> ^ parameters);
public int ExecuteFunction (string functionName, params System.Data.Objects.ObjectParameter[] parameters);
member this.ExecuteFunction : string * System.Data.Objects.ObjectParameter[] -> int
Public Function ExecuteFunction (functionName As String, ParamArray parameters As ObjectParameter()) As Integer

參數

functionName
String

預存程序或函式的名稱。 名稱可以包含容器名稱,例如 <Container Name>.<Function Name>。 已知預設容器名稱時,只需要函式名稱。

parameters
ObjectParameter[]

ObjectParameter 物件的陣列。

傳回

受影響的資料列數目。

例外狀況

function 為 null 或空白。

-或-

找不到 function

實體讀取器 (Reader) 不支援這個 function

-或-

讀取器與 function 的型別不相符。

適用於

ExecuteFunction<TElement>(String, ObjectParameter[])

使用指定的參數,執行資料來源中所定義且在概念模型中有所對應的預存程序或函式。 傳回具型別的 ObjectResult<T>

protected:
generic <typename TElement>
 where TElement : System::Data::Objects::DataClasses::IEntityWithChangeTracker System::Data::Objects::ObjectResult<TElement> ^ ExecuteFunction(System::String ^ functionName, ... cli::array <System::Data::Objects::ObjectParameter ^> ^ parameters);
public:
generic <typename TElement>
 System::Data::Objects::ObjectResult<TElement> ^ ExecuteFunction(System::String ^ functionName, ... cli::array <System::Data::Objects::ObjectParameter ^> ^ parameters);
protected System.Data.Objects.ObjectResult<TElement> ExecuteFunction<TElement> (string functionName, params System.Data.Objects.ObjectParameter[] parameters) where TElement : System.Data.Objects.DataClasses.IEntityWithChangeTracker;
public System.Data.Objects.ObjectResult<TElement> ExecuteFunction<TElement> (string functionName, params System.Data.Objects.ObjectParameter[] parameters);
member this.ExecuteFunction : string * System.Data.Objects.ObjectParameter[] -> System.Data.Objects.ObjectResult<'Element (requires 'Element :> System.Data.Objects.DataClasses.IEntityWithChangeTracker)> (requires 'Element :> System.Data.Objects.DataClasses.IEntityWithChangeTracker)
member this.ExecuteFunction : string * System.Data.Objects.ObjectParameter[] -> System.Data.Objects.ObjectResult<'Element>
Protected Function ExecuteFunction(Of TElement As IEntityWithChangeTracker) (functionName As String, ParamArray parameters As ObjectParameter()) As ObjectResult(Of TElement)
Public Function ExecuteFunction(Of TElement) (functionName As String, ParamArray parameters As ObjectParameter()) As ObjectResult(Of TElement)

類型參數

TElement

針對資料來源執行此函式時,所傳回之 ObjectResult<T> 的實體類型。 此類型必須實作 IEntityWithChangeTracker

參數

functionName
String

預存程序或函式的名稱。 名稱可以包含容器名稱,例如 <Container Name>.<Function Name>。 已知預設容器名稱時,只需要函式名稱。

parameters
ObjectParameter[]

ObjectParameter 物件的陣列。

傳回

ObjectResult<TElement>

預存程序所傳回之資料的 ObjectResult<T>

例外狀況

function 為 null 或空白。

-或-

找不到 function

實體讀取器 (Reader) 不支援這個 function

-或-

讀取器與 function 的型別不相符。

備註

方法 ExecuteFunction 是協助程式方法,用來執行數據源中定義的預存程式或函式,並以概念模型表示。 實體數據模型工具會為概念模型中的每個 FunctionImport 元素 產生方法。 這些方法會呼叫強型別 ExecuteFunction ,以傳回具型別的 ObjectResult<T>。 如需詳細資訊,請參閱 使用預存程式的應用程式程式代碼 (Entity Framework)

參數數位中需要函式的所有參數,而且所有型別都會針對匯入函式的元數據進行檢查,包括函式本身的類型。 null CLR 實值型別允許值。 參數驗證是由提供者執行的。

方法 ExecuteFunction 會使用 MergeOption 的值 AppendOnly。 因此,如果物件已存在於對象內容中,則不會從數據源載入該物件。

另請參閱

適用於

ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[])

使用指定的參數和合併選項,執行資料來源中所定義和以概念模型表示之指定的預存程序或函式。 傳回具型別的 ObjectResult<T>

public:
generic <typename TElement>
 System::Data::Objects::ObjectResult<TElement> ^ ExecuteFunction(System::String ^ functionName, System::Data::Objects::MergeOption mergeOption, ... cli::array <System::Data::Objects::ObjectParameter ^> ^ parameters);
public System.Data.Objects.ObjectResult<TElement> ExecuteFunction<TElement> (string functionName, System.Data.Objects.MergeOption mergeOption, params System.Data.Objects.ObjectParameter[] parameters);
member this.ExecuteFunction : string * System.Data.Objects.MergeOption * System.Data.Objects.ObjectParameter[] -> System.Data.Objects.ObjectResult<'Element>
Public Function ExecuteFunction(Of TElement) (functionName As String, mergeOption As MergeOption, ParamArray parameters As ObjectParameter()) As ObjectResult(Of TElement)

類型參數

TElement

針對資料來源執行此函式時,所傳回之 ObjectResult<T> 的實體類型。 此類型必須實作 IEntityWithChangeTracker

參數

functionName
String

預存程序或函式的名稱。 名稱可以包含容器名稱,例如 <Container Name>.<Function Name>。 已知預設容器名稱時,只需要函式名稱。

mergeOption
MergeOption

要在執行查詢時使用的 MergeOption

parameters
ObjectParameter[]

ObjectParameter 物件的陣列。

傳回

ObjectResult<TElement>

預存程序所傳回之資料的 ObjectResult<T>

例外狀況

function 為 null 或空白。

-或-

找不到 function

實體讀取器 (Reader) 不支援這個 function

-或-

讀取器與 function 的型別不相符。

備註

方法是 ExecuteFunction 協助程式方法,用來執行數據源中定義的預存程式或函式,並以概念模型表示。 實體數據模型工具會為概念模型中的每個 FunctionImport 元素 產生方法。 這些方法會呼叫強型別 ExecuteFunction ,以傳回具型別的 ObjectResult<T>。 如需詳細資訊,請參閱 使用預存程式的應用程式程式代碼 (Entity Framework)

參數數位中需要函式的所有參數,而且所有型別都會針對匯入函式的元數據進行檢查,包括函式本身的類型。 null CLR 實值型別允許值。 參數驗證是由提供者執行的。

另請參閱

適用於