微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MVC 用户输入用于存储过程参数的 int x datestart 和 dateend 变量

如何解决MVC 用户输入用于存储过程参数的 int x datestart 和 dateend 变量

所以我有一个使用实体框架 6 的 mvc 5,我使用了 chinook 数据库。我已经让 mvc 一切正常,我现在必须制作一些 sql 命令,比如从表中显示从 datestart 到 dateend 的 X 记录。我已经创建了 sql 命令,我想将它用作我的 mvc 上的存储过程,但我找不到如何向用户显示

选择INT X

选择日期开始

选择日期

并将他的输入从视图传递到控制器到我的存储过程参数。 我需要通过一些简短的映射来做到这一点吗?

解决方法

假设您有像 ResultSize、DateStart 和 DateEnd 这样的视图模型属性,只需将这些属性映射到存储过程参数:

public ActionResult YourAction(YourViewModel vm)
{
   using (var ctxt = new YourDBContext())
   {
      var yourResultSet = ctxt.Database.SqlQuery<YourViewModel>("EXEC YourSP @param1,@param2,@param3",vm.ResultSize,vm.DateStart,vm.DateEnd).Select(s => new YourViewModel
      {
        //YourViewModel properties from database code here
        DateStart = s.DateStart,//rest of code                  
      }).ToList();
   }
}

希望我已经回答了您的问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。