ASP.Net MVC如何将数据从视图传递到控制器
发布时间:2020-12-15 19:21:12 所属栏目:asp.Net 来源:网络整理
导读:我对ASP.Net完全陌生,我相信这是一个非常基本的问题 我有一个视图,其中有一个链接来生成报告,但是能够生成报告,我必须要求用户提供一个合适的文本名称。 到目前为止,我已经能够传递数据从服务器到使用从我的控制器传递的视图查看,但我不知道如何传递数
我对ASP.Net完全陌生,我相信这是一个非常基本的问题
我有一个视图,其中有一个链接来生成报告,但是能够生成报告,我必须要求用户提供一个合适的文本名称。 到目前为止,我已经能够传递数据从服务器到使用从我的控制器传递的视图查看,但我不知道如何传递数据从视图到我的控制器。 在这种情况下,我只需要传递一个字符串从视图到控制器。 任何建议与示例将不胜感激。 更新 我理解我必须发布数据回到服务器,但是如何实现以razorhtml代码和控制器的形式? 谢谢, 解决方法
你可以用ViewModels做,就像你从控制器传递数据到视图。
假设你有一个这样的viewmodel public class ReportViewModel { public string Name { set;get;} } 并在您的GET操作, public ActionResult Report() { return View(new ReportViewModel()); } 并且您的视图必须强烈键入ReportViewModel @model ReportViewModel @using(Html.BeginForm()) { Report NAme : @Html.TextBoxFor(s=>s.Name) <input type="submit" value="Generate report" /> } 并在您的控制器中的HttpPost操作方法中 [HttpPost] public ActionResult Report(ReportViewModel model) { //check for model.Name property value now //to do : Return something } 或者,简单地说,你可以做到这一点没有POCO类(Viewmodels) @using(Html.BeginForm()) { <input type="text" name="reportName" /> <input type="submit" /> } 并在您的HttpPost操作中,使用与文本框名称相同名称的参数。 [HttpPost] public ActionResult Report(string reportName) { //check for reportName parameter value now //to do : Return something } 编辑:根据评论 如果你想发布到另一个控制器,你可以使用this overload的BeginForm方法。 @using(Html.BeginForm("Report","SomeOtherControllerName")) { <input type="text" name="reportName" /> <input type="submit" /> } 将数据从操作方法传递到视图? 您可以使用相同的视图模型,只需在GET操作方法中设置属性值即可 public ActionResult Report() { var vm = new ReportViewModel(); vm.Name="SuperManReport"; return View(vm); } 并在您的视图 @model ReportViewModel <h2>@Model.Name</h2> <p>Can have input field with value set in action method</p> @using(Html.BeginForm()) { @Html.TextBoxFor(s=>s.Name) <input type="submit" /> } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 浅谈ASP.NET Core 2.0 布局页面(译)
- asp.net – 如何测试开发机器上的子域? abc.localhost
- asp.net – 使用Html.EditorFor生成具有特定行数和列数的te
- asp.net-mvc-4 – 返回Web API中的自定义错误对象
- asp.net-mvc-3 – 如何使用复选框列制作MVC 3 Webgrid?
- IIS6中经典ASP的会话状态和垃圾回收
- asp.net – MVC5(VS2012)Identity CreateIdentityAsync –
- asp.net-mvc – ASP.NET MVC是否为区域创建默认路由
- asp.net-mvc – ASP.NET MVC 4 Web API无法映射包含字符串“
- asp.net-mvc – WebForms和MVC可以存在于一个项目中吗?
推荐文章
站长推荐
- asp.net-mvc-4 – MVC 4中的HttpContext.Current
- Azure中的ASP.NET会话状态提供程序[closed]
- asp.net-mvc-3 – 向Entity Framework数据库添加
- asp.net – 输出缓存使用BOTH varybyparam和vary
- Asp.Net 不同的OnClick事件区别小结(onservercli
- 在经典ASP中保持会话活动的最低必要代码是什么?
- 无限分级和tree结构数据增删改【提供Demo下载】
- asp.net-mvc – ASP.NET MVC 3列表到IEnumerable
- ASP.NET:jQuery AJAX’data’param问题
- asp.net-mvc – 如何在Require.js中引用捆绑的js
热点阅读