将数据从 Html.EditorFor 传递到控制器

本文关键字:控制器 EditorFor 数据 Html | 更新日期: 2023-09-27 18:32:04

如何将数据从 Html.EditorFor 传递到 myController 中的 myAction?

这是我的编辑器:

<div class="editor-label">
            @Html.LabelFor(model => model.Quote_Currency)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.Quote_Currency, new { })
            @Html.ValidationMessageFor(model => model.Quote_Currency)
        </div>

这是我的控制器操作:

public ActionResult SaveQuote(FxQuote quote, string Quote_Currency)
        {

                objQuote.Quote_Currency = Quote_Currency;
                dcfx.FxQuotes.InsertOnSubmit(quote);
                dcfx.SubmitChanges();

            return View();

在这里,我试图拥有一个与我的编辑器同名的参数,但这不起作用。请帮忙。

将数据从 Html.EditorFor 传递到控制器

可以将

FormCollection collection作为额外参数添加到控制器方法中。该集合将保存从控制器中的视图传递的所有数据。可以使用调试器来浏览哪些数据正好发送到控制器。

你为什么不直接改变动作来接受你的模型呢?

像这样:

 public ActionResult SaveQuote(ModelType model) 
 { 

            objQuote.Quote_Currency = model.Quote_Currency; 
            dcfx.FxQuotes.InsertOnSubmit(model.Quote); 
            dcfx.SubmitChanges(); 

        return View();
  }

或者,您可以将其更改为接受表单集合,如另一个答案中所述:

 public ActionResult SaveQuote(FormCollection collection) 

希望这有帮助