C# 手动删除数据库后,模型不会更新
我的客户经理就是这样C# 手动删除数据库后,模型不会更新,c#,.net,asp.net-mvc,C#,.net,Asp.net Mvc,我的客户经理就是这样 AccountManagers = p.SuperUserAccessPermissions .AsQueryable() .Where(a => a.IsDeleted == false) .Select(SuperUserAccessPermissionViewModel) .ToL
AccountManagers =
p.SuperUserAccessPermissions
.AsQueryable()
.Where(a => a.IsDeleted == false)
.Select(SuperUserAccessPermissionViewModel)
.ToList()
注意a.IsDeleted==false
但是,当我从数据库中手动删除它并尝试在如下视图中显示它时:
@foreach (var item in Model.AccountManagers)
{
<tr>
<td>@item.FullName</td>
<td class="w1">
<a class="btn btn-sm btn-default"
href="@Url.Route(Routes.SuperArea.Clients.ModalDeleteAccountManagerGET(item.SuperUserAccessPermissionId))"
@Html.DataAttribute_Modal(ModalType.Medium)>
<i class="fa fa-remove"></i>
</a>
</td>
</tr>
}
@foreach(Model.AccountManagers中的var项)
{
@item.FullName
}
我还在一份清单上。问题在哪里 首先,通过脚本从数据库中删除记录:
UPDATE [table] SET IsDeleted = true
第二,为了确定,请选择刚删除的记录:
SELECT * FROM [table] WHERE IsDeleted = true
如果确实删除了记录,则启动应用程序并监视表中的任何新条目。应用程序可能会在代码的某个位置插入新记录
如果记录仍然存在,我将检查连接字符串。我有更多次想承认应用程序连接到错误的数据库。您的
p.SuperUserAccessPermissions
中的p
是什么?为什么需要一个.AsQueryable()
?我在Microsoft SQL Server管理研究中删除了它,您在Management Studio中运行了一个单独的查询以确认它是否被设置为IsDeleted=1?@@IrmantasŽelionis,您是否使用了Unity之类的IoC
模式?@ershoaib否,我不清楚OP显然是在使用软删除来删除该行<代码>从……删除不是他正在做或想要做的事情。