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;
}