标签: executestorequery

实体框架 - CreateQuery VS ExecuteFunction VS ExecuteStoreQuery VS ExecuteStoreCommand

以下有何不同之处

CreateQuery()  ExecuteFunction(), ExecuteStoreQuery() and ExecuteStoreCommand() 
Run Code Online (Sandbox Code Playgroud)

据我所知,CreateQuery用于Entity SQL,其余的方法用于在DB中定义的sql函数或存储过程.

根据ObjectContext类元数据,它们如下:

CreateQuery():Creates an System.Data.Objects.ObjectQuery<T> in the current object context        by using the specified query string. 
Returned -> System.Data.Objects.ObjectQuery<T>


ExecuteFunction(): Executes a stored procedure or function that is defined in the data source and expressed in the conceptual model; discards any results returned from
the function; and returns the number of rows affected by the execution.
Returned -> The number of rows affected.
This has an overloaded version which return -> The entity …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework executestorequery difference

11
推荐指数
1
解决办法
7395
查看次数

数据阅读器有多个字段.多个字段对EDM基元类型无效

我试图使用ExecuteStoreQuery像这样的linq 方法从表中删除多行

 string query = "delete from IMPORTStatistics where districtid='" + districtId + "'";
 db.ExecuteStoreQuery<int>(query);
Run Code Online (Sandbox Code Playgroud)

但它抛出了这个例外

"The data reader has more than one field. Multiple fields are not valid for EDM primitive types."
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

仅供参考,我使用的是MySql.

mysql linq executestorequery

6
推荐指数
1
解决办法
1万
查看次数

带有TVP参数的ExecuteStoreQuery

我的数据库中有一个存储过程,它接受一个表值参数,一个包含单个整数Id列的IdTable对象列表.

我有一个数据库实体模型,想要做以下...

ProjectEntities projectEntities = new ProjectEntities ();

DataTable stationIds = new DataTable();
stationIds.Columns.Add("Id");
stationIds.Rows.Add(1);
stationIds.Rows.Add(2);

SqlParameter parameter = new SqlParameter("@stationIds",stationIds);
parameter.TypeName = "IdTable";

var parameters = new object[] {parameter};

var results = projectEntities .ExecuteStoreQuery<ProjectSummary>("exec ProjectSummary", parameters);

var count = results.Count();
Run Code Online (Sandbox Code Playgroud)

当它应该返回一堆ProjectSummary实体时,它会运行并且不返回任何结果.

当我在SQL事件探查器中对此进行分析时,我得到以下内容

declare @p3 IdTable
insert into @p3 values(N'1')
insert into @p3 values(N'2')

exec sp_executesql N'exec ProjectSummary',N'@stationIds [IdTable] READONLY',@stationIds=@p3
Run Code Online (Sandbox Code Playgroud)

如果我声明存储过程

ALTER PROCEDURE [dbo].[ProjectSummary]
    @stationIds  [dbo].[IdTable] READONLY
AS
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from …
Run Code Online (Sandbox Code Playgroud)

entity-framework-4 executestorequery

5
推荐指数
1
解决办法
6984
查看次数

ExecuteStoreQuery和ExecuteStoreCommand有什么区别

在entityframework中,我们可以使用ExecuteStoreQuery或ExecuteStoreCommand来执行sql查询.那么它们之间有什么区别(哪种情况不同)?

谢谢.

c# entity-framework executestorequery

5
推荐指数
1
解决办法
6700
查看次数