相关疑难解决方法(0)

ExecuteSqlCommand和SqlQuery有什么区别?什么时候进行数据库访问?

我有几个关于如何从我的数据库访问数据的建议:

var allMyIds
    = context.Database.ExecuteSqlCommand("select id from AspNetUserLogins");

var allMyIds
    = context.Database.SqlQuery<string>("select id from AspNetUserLogins");
Run Code Online (Sandbox Code Playgroud)

如果有人可以解释这些之间的区别吗?

c# asp.net entity-framework sql-server-2012 entity-framework-6

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

从ADO.NET中的存储过程获取返回值

我知道还有另一个问题,几乎相同的标题,但它没有回答我的问题.我有一个存储过程,它在插入后返回唯一标识符(@@ identity).我在服务器资源管理器中尝试了它,它按预期工作(@RETURN_VALUE = [identifier]).在我的代码中,我添加了一个名为"@RETURN_VALUE"的参数,其中ReturnValue方向优先于任何其他参数,但是当我使用ExecuteNonQuery()运行我的查询时该参数保持为空.我不知道我做错了什么.我的SPROC:

    ALTER PROCEDURE dbo.SetAuction
 (
  @auctionID int,
  @itemID int,
  @auctionType tinyint,
  @reservationPrice int,
  @maxPrice int,
  @auctionEnd datetime,
  @auctionStart datetime,
  @auctionTTL tinyint,
  @itemName nchar(50),
  @itemDescription nvarchar(MAX),
  @categoryID tinyint,
  @categoryName nchar(50)
 ) AS
 IF @auctionID <> 0
  BEGIN
   BEGIN TRAN T1

   UPDATE Auction
   SET  AuctionType   = @auctionType,
     ReservationPrice = @reservationPrice,
     MaxPrice    = @maxPrice,
     AuctionEnd    = @auctionEnd,
     AuctionStart   = @auctionStart,
     AuctionTTL    = @auctionTTL
   WHERE AuctionID    = @auctionID;

   UPDATE Item
   SET
    ItemName  = @itemName,
    ItemDescription = @itemDescription
   WHERE
    ItemID = (SELECT …
Run Code Online (Sandbox Code Playgroud)

c# ado.net

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