如何解决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 举报,一经查实,本站将立刻删除。