如何发布数据而不将其传递给模型.Net Core

Posted

技术标签:

【中文标题】如何发布数据而不将其传递给模型.Net Core【英文标题】:how to post data without passing it to model .Net Core 【发布时间】:2021-01-13 05:27:08 【问题描述】:

我有这个想法

<form class="d-inline-block" asp-controller="">
                      <div class="form-group mb-2 d-inline-block">
                          <input type="text" readonly class="form-control-plaintext border-bottom " placeholder="Task Number">
                      </div>
                      <button type="submit" class="btn btn-primary mb-2">Assign</button>
                  </form>

这是我在控制器中使用的方法,称为ManageController

public IActionResult AssignTask(string tasknumber,string userid,string username)
    
        SqlConnection sqlcon = new SqlConnection(".....");
        sqlcon.Open();
        SqlCommand sqlcom = new SqlCommand("...", sqlcon);
        sqlcom.ExecuteNonQuery();
        sqlcon.Close();
        return RedirectToAction("Members", new  Username = username );
    

当用户点击提交而不使用asp-for 输入时,我如何将所有这些参数传递给控制器​​。

【问题讨论】:

这段代码怎么样&lt;input type="hidden" name="tasknumber" value="aa"/&gt; 【参考方案1】:

您可以使用以下代码:

<form class="d-inline-block" asp-controller="Manage" asp-action="AssignTask">
<div class="form-group mb-2 d-inline-block">
    <input type="hidden" name="tasknumber" value="yourvalue"/>
    //...
    <input type="text" readonly class="form-control-plaintext border-bottom " placeholder="Task Number">
</div>
<button type="submit" class="btn btn-primary mb-2">Assign</button>
</form>

方法:

 [HttpPost]
 public IActionResult AssignTask(string tasknumber,string userid,string username)
    
     //...
    

同理,在你的输入框中,只需要给它一个name,与methodparameter name相同,就可以转入method了。

【讨论】:

以上是关于如何发布数据而不将其传递给模型.Net Core的主要内容,如果未能解决你的问题,请参考以下文章

如何将一些信息传递给视图而不将其包含在 URL 中(django 新手)

如何自动将用户信息传递给 Bot Framework 对话实例,而不将其作为显式消息发布在聊天窗口中?

Codeception 助手使用 $I 而不将其传递给助手

设置自定义异常的消息而不将其传递给基本构造函数

在 CUDA 中查找 max/min 而不将其传递给 CPU

如何访问对象而不将其作为参数传递?