使用LINQ和Entity Framework获取存储过程输出参数

编程入门 行业动态 更新时间:2024-10-24 10:17:54
本文介绍了使用LINQ和Entity Framework获取存储过程输出参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我已经创建了一个存储过程,该过程使用参数来创建用户.如果用户已经存在,则将输出参数设置为用户已经存在",并且仅执行其他操作.

I've created a stored procedure that takes parameters to create a user. If the user already exists it sets the output parameter to 'User already exists' and does nothing more.

现在,我已将此函数(InsertNewUser)映射到我的实体框架,并按如下方式调用它:

Now I've mapped this function (InsertNewUser) to my Entity Framework and am calling it like so:

context.InsertNewUser(email, name, passwordhash, salt, ???)

???是我遇到麻烦的地方.在存储过程中,此参数是OUTPUT参数.我尝试声明一个字符串,然后传入"out definedString",但这是不正确的.

The ??? is where I'm having trouble. In the stored procedure this parameter is an OUTPUT parameter. I tried declaring a string and then passing in "out declaredString" but that wasn't correct.

我不确定我是否会以正确的方式进行操作,有什么想法吗?

I'm not sure I'm going about this the right way, any thoughts?

这是存储过程:

ALTER PROCEDURE dbo.InsertNewUser ( @eMail nvarchar(256), @firstName nvarchar(256), @lastName nvarchar(256), @passwordHash nvarchar(256), @salt nvarchar(256), @output nvarchar(256) OUTPUT ) AS /* Saves a user to the db. */ BEGIN --First check if the user doesn't exist IF EXISTS (SELECT eMail FROM UserSet WHERE eMail = @eMail) --Return that user exists SET @output = 'User exists' ELSE INSERT INTO UserSet VALUES (@eMail, @firstName, @lastName, @passwordHash, @salt) END

推荐答案

我使用以下代码解决了该问题:

I solved it with this code:

//This will provide the parameter System.Data.Objects.ObjectParameter parameter = new ObjectParameter("output", "nvarchar(256)"); //This will contain the returned values ObjectResult result = context.CheckIfUserExists(eMail, parameter);

更多推荐

使用LINQ和Entity Framework获取存储过程输出参数

本文发布于:2023-10-28 23:21:55,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1538063.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:存储过程   参数   LINQ   Entity   Framework

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!