Asp.net mvc 数据不会在浏览器中刷新,但会在数据库中刷新

Asp.net mvc 数据不会在浏览器中刷新,但会在数据库中刷新,asp.net-mvc,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 4,我有一个工作提交按钮,所以当我对我的表单进行更改并单击提交表单更新以进行更改时 不过。在数据库中显示新数据。但当我将操作重定向到最后一页时,它不会显示更新的数据 这是我的代码(控制器): 因此,当它击中: return RedirectToAction("RoleManagement"); 它只是转到页面,但不刷新数据。但当我查看我的数据库时,它已经在那里更改了 我是ASP.NET MVC新手,不知道从哪里开始找 有什么想法吗 角色管理: publ

我有一个工作提交按钮,所以当我对我的表单进行更改并单击提交表单更新以进行更改时

不过。在数据库中显示新数据。但当我将操作重定向到最后一页时,它不会显示更新的数据

这是我的代码(控制器):

因此,当它击中:

                     return RedirectToAction("RoleManagement");
它只是转到页面,但不刷新数据。但当我查看我的数据库时,它已经在那里更改了

我是ASP.NET MVC新手,不知道从哪里开始找

有什么想法吗

角色管理:

  public ActionResult RoleManagement(string userName)
    {

        return View("RoleManagement", new UserForm(userName));
    }
角色管理cshtml:

   @foreach (M2DAL.M2Service.Role r in Model.AllRoleIDs)
{
    <tr>
        <td>@r.RoleName</td> //This is not refreshing, on debug shows the number, but browser shows old number)
        <td>@r.RoleID</td>
        <td>@Html.ActionLink("Edit Roles", "EditRole", "Users", new { roleId = r.RoleID }, new { @class = "action" }) </td>
    </tr>
}
@foreach(Model.AllRoleIDs中的M2DAL.M2Service.Role r)
{
@r、 RoleName//这不是刷新,调试时显示数字,但浏览器显示旧数字)
@r、 罗莱德
@ActionLink(“编辑角色”、“编辑角色”、“用户”、新的{roleId=r.roleId}、新的{@class=“action”})
}

您没有发布
角色管理
操作的代码。我不知道您将模型存储在哪里,但您确定此操作正在再次读取数据库吗

应该有这样的东西(只是一个例子)


发布
RoleManagement
方法的代码-问题所在(当模型无效而不是返回视图时,您真的想重定向到
RoleManagement
)iv添加了RoleManagement,这只是一个cshtml页面
RoleManagement
方法需要一个参数
userName
,但您没有向该方法传递任何内容。不确定新的用户表单(用户名)做了什么,但是
用户名
将是
空的
。重定向时,它应该是
return RedirectToAction(“RoleManagement”,new{userName=“SomeValue”})
(大概
userName
是发布表单时
Roles
中一个属性的值)当我调试时,userName显示为null,但在cshtml中RoleName显示为新数据。但出于某种原因,它不在浏览器中!很难说。我甚至不知道
newuserform(null)
做什么。看看你前面的问题,
AllRoleIDs
Role
类型的属性,而
RoleManagement
返回的是
UserForm
类型的模型,那么这两种类型是否都有属性
AllRoleIDs
?我真的不知道你在这里干什么。(注:在模型中放入访问数据库的方法不是很好的做法)你说的是什么意思。Take(1000)我也不明白为什么它不刷新?是因为RoleManagement方法还是Save按钮?正如@stephen muecke所说,新用户表单(userName)背后到底是什么?在
角色管理
操作中,您似乎没有从DB加载任何数据。
   @foreach (M2DAL.M2Service.Role r in Model.AllRoleIDs)
{
    <tr>
        <td>@r.RoleName</td> //This is not refreshing, on debug shows the number, but browser shows old number)
        <td>@r.RoleID</td>
        <td>@Html.ActionLink("Edit Roles", "EditRole", "Users", new { roleId = r.RoleID }, new { @class = "action" }) </td>
    </tr>
}
[HttpGet]
public ActionResult RoleManagement()
{
    var roles = Srvctx.Roles.Take(1000);
    return roles;
}