加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-5 – EntityFramework.SqlServer.dll中出现’System

发布时间:2020-12-16 03:23:44 所属栏目:asp.Net 来源:网络整理
导读:我试图使用实体框架6调用存储过程.我在输出消息上收到错误. A first chance exception of type ‘System.Data.Entity.Core.EntityCommandExecutionException’ occurred in EntityFramework.SqlServer.dll using (var context = new PartnerPortalEntities2(
我试图使用实体框架6调用存储过程.我在输出消息上收到错误.

A first chance exception of type ‘System.Data.Entity.Core.EntityCommandExecutionException’ occurred in EntityFramework.SqlServer.dll

using (var context = new PartnerPortalEntities2())
 {
    var outputParameter = new ObjectParameter("result",typeof(string));
    var spresults = context.assignRoles_CreateAccountAndContacts(user.Id,role,user.AccountId,user.AccountName,user.ContactId,user.FirstName,user.LastName,outputParameter);
    // Control never comes after the above line
    if(spresults.Equals("1"))
    {
       //Do something
    }
    else
    {
        // Do something
    }

    }

当我进行调试时,控件进入调用存储过程的行,之后我们在输出窗口上得到上述错误并且调试器停止,它永远不会进入if语句.

我已经在SQLserver上运行存储过程,它在那里工作正常.任何想法可能是错误.我通过从数据库生成代码来构建上下文.

解决方法

正如@Shoe所建议的那样,我已经在try catch块中嵌入了对存储过程的调用,该块捕获了异常并显示了确切的错误.

事实证明,我没有将确切的变量作为输出参数传递.将结果更改为结果,因为存储过程中定义的变量是结果

var outputParameter = new ObjectParameter("result",typeof(string));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读