ASP.NET MVC发布模型ID的更好方法是什么?
发布时间:2020-12-16 04:37:22 所属栏目:asp.Net 来源:网络整理
导读:我有一个ViewModel我绑定到一个视图: ProductViewModel model = Mapper.MapProduct,ProductViewModel(product);return View(model); 视图(和视图模型)用于编辑产品,因此ProductViewModel具有与数据库中的ID对应的ID属性. 并将ID发回控制器我在视图中以我的
我有一个ViewModel我绑定到一个视图:
ProductViewModel model = Mapper.Map<Product,ProductViewModel>(product); return View(model); 视图(和视图模型)用于编辑产品,因此ProductViewModel具有与数据库中的ID对应的ID属性. 并将ID发回控制器我在视图中以我的形式执行此操作: @Html.HiddenFor(x => x.Id) 即使这样可行 – 我想知道是否有更好的方法将ID发回控制器?路线值可能?或者这是一个相当标准的模式/方法? 解决方法
如果我有一个GET操作,其中包含我的路由中的ID:/ Products / Edit / 1,那么我通常将其保留为路由值:
[HttpPost] public ActionResult Edit(int id,EditProductViewModel model) 不过,这纯粹是我的偏好.没有正确或错误的方法. 这个方法的好处是你不再需要使用隐藏值传递它,因为它是URL的一部分.实际上,如果你确实用隐藏值传递它,我相信它会被忽略. 或者,由于id是路由的一部分,因此您甚至不需要具有单独的参数: [HttpPost] public ActionResult Edit(EditProductViewModel model) public class EditProductViewModel { public int Id { get; set; } } 同样,这纯粹是一种偏好. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – asp.net mvc通用控制器
- asp.net-mvc – 有没有MVC方式做ASCX?
- asp.net-mvc-3 – ASP.NET MVC 3 – 验证问题
- MVC 文件夹
- 使用带有自定义角色提供程序的asp.net mvc 4登录失败时,错误
- asp.net-mvc-3 – 被重定向到错误loginUrl – >帐户/登录,而
- asp.net-mvc – 用作复选框时bool值类型的必需属性
- asp.net-mvc – Sitecore 7.5 MVC和HttpContext.Session.Ti
- MVC .Net Cascade在使用EF Code First Approach时删除
- 尝试使用asp.net流式传输PDF文件会产生“损坏的文件”
推荐文章
站长推荐
- asp.net – Gridview在列标题中排序/向下箭头
- asp.net – 为什么我不能将if和eval结合起来?最
- asp.net – 抛出类型“System.OutOfMemoryExcept
- asp.net-mvc – CultureInfo:ASP.NET / MVC上的
- 从动态添加的文本框中获取值asp.net c#
- asp.net-mvc – 清理用户指定的URL以防止XSS(使用
- asp.net – 经典ASP出站TLS 1.2
- kendo-ui – Kendo Grid阻止默认请求
- asp.net-mvc – 将URL作为get参数传递?
- asp.net-mvc – Asp MVC不引人注目的客户端验证始
热点阅读