gpt4 book ai didi

c# - 在删除项目后添加成功消息,在 MVC4 中

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

我在屏幕上显示了一个删除超链接:

用户局部 View :

<%: Ajax.ActionLink("Delete", "Delete", new { id = item.UserID }, new AjaxOptions { HttpMethod = "GET", UpdateTargetId = "tabs-users", InsertionMode = InsertionMode.Replace }, htmlAttributes: new { data_target = "#tabs-users" })%>

这会在我的 Controller 中调用一个方法

Controller

    [HttpGet]
public PartialViewResult Delete(int id)
{
userManager.DeleteUser(id);
ViewBag.Status = string.Format("User deleted ok, id: {0}", id);
return PartialView("UsersPartial", userManager.GetUsers());
}

在上面的代码中,我返回了一个 PartialView,这是可行的。我还想在此 View 的顶部显示一条消息,在上面的 ViewBag.Status 中定义,但我只希望它在执行此操作后显示此 div。

另请注意,我要返回的 View 是强类型的:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<LMS.Data.User>>" %>

最后,我想显示的状态消息是我在另一个局部 View 中创建的一个 div,因此我可以在整个站点中显示它。

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<dynamic>" %>

<div id="status" class="statusok">
<%: ViewBag.Status %>
</div>

执行此操作的正确方法是什么?

最佳答案

ViewBag.Status 在您为其赋值之前将为 null,因此您可以在 View 中检查它然后显示它:

@if(ViewBag.Status != null)
{
<div id="status" class="statusok">
@ViewBag.Status
</div>
}

在返回相同 View 的后续调用中,如果您不再希望它显示,只需将 ViewBag.Status 设置为 null

关于c# - 在删除项目后添加成功消息,在 MVC4 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12497813/

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