gpt4 book ai didi

c# - 将短语(变量)从搜索器(从 View )发送到 Controller ,asp.net mvc

转载 作者:太空宇宙 更新时间:2023-11-03 23:37:20 25 4
gpt4 key购买 nike

我正在尝试在 asp.net 中创建搜索器。我对此很陌生。我正在尝试在 View 中创建并发送到 Controller 变量,该变量具有用搜索器编写的文本。在那一刻,我有那样的事 -->我的问题是,在哪里以及如何创建和发送变量并向她提供在搜索器中写入的数据?

布局

form class="navbar-form navbar-left" role="search">
@using (Html.BeginForm("Index", "Searcher", FormMethod.Post, new { phrase = "abc" }))
{
<div class="form-group">
<input type="text" class="form-control" placeholder="Wpisz frazę...">
</div>
<button type="submit" class="btn btn-default">@Html.ActionLink("Szukaj", "Index", "Searcher")</button>
}
</form>

Controller

 public class SearcherController : ApplicationController
{
[HttpGet]
public ActionResult Index(string message)
{
ViewBag.phrase = message;
getCurrentUser();
return View();
}

}

查看

@{
ViewBag.Title = "Index";
}

<h2>Index</h2>
<ul>
<li>@ViewBag.message</li>
</ul>

最佳答案

您缺少 MVC 的关键部分 -> 模型

让我们先创建一个:

public class SearchModel
{
public string Criteria { get; set; }
}

然后让我们更新你的“布局” View (不知道为什么你有一个表单中的表单?):

@model SearchModel

@using (Html.BeginForm("Index", "Searcher", FormMethod.Post, new { phrase = "abc" }))
{
<div class="form-group">
@Html.EditorFor(m => m.Criteria)
</div>
<button type="submit" class="btn btn-default">@Html.ActionLink("Szukaj", "Index", "Searcher")</button>
}

然后为该 View 服务的操作:

[HttpGet]
public ActionResult Index()
{
return View(new SearchModel());
}

那么您的发布方法将是:

[HttpPost]
public ActionResult Index(SearchModel model)
{
ViewBag.phrase = model.Criteria;
getCurrentUser();
return View();
}

关于c# - 将短语(变量)从搜索器(从 View )发送到 Controller ,asp.net mvc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30184553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com