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 未找到。

实体读取器不支持此 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 未找到。

实体读取器不支持此 function

- 或 -

读取器的类型与 function 的类型不匹配。

注解

方法是 ExecuteFunction 一种帮助程序方法,用于执行在数据源中定义并在概念模型中表示的存储过程或函数。 实体数据模型工具为概念模型中的每个 FunctionImport 元素 生成一个方法。 这些方法调用强类型ExecuteFunction以返回类型化 。ObjectResult<T> 有关详细信息,请参阅 使用存储过程的应用程序代码 (实体框架)

参数数组中需要函数的所有参数,并且会根据导入函数的元数据检查所有类型,包括函数本身的类型。 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 未找到。

实体读取器不支持此 function

- 或 -

读取器的类型与 function 的类型不匹配。

注解

方法是 ExecuteFunction 一种帮助程序方法,用于执行在数据源中定义并在概念模型中表示的存储过程或函数。 实体数据模型工具为概念模型中的每个 FunctionImport 元素 生成一个方法。 这些方法调用强类型ExecuteFunction以返回类型化 。ObjectResult<T> 有关详细信息,请参阅 使用存储过程的应用程序代码 (实体框架)

参数数组中需要函数的所有参数,并且会根据导入函数的元数据检查所有类型,包括函数本身的类型。 null CLR 值类型允许使用值。 参数验证由提供程序执行。

另请参阅

适用于