Tag: soft delete

软删除Nhibernate

我想在我的数据库表上进行软删除…我已经应用了以下语句(如此处所述http://nhibernate.info/blog/2008/09/06/soft-deletes.html并且在很多问题中在SO)。 Fattura是我的表,我想应用逻辑删除(没有触发器) Fattura.hbm.xml Fattura.cs – 模型对象 using System; namespace ModelObject { public class Fattura : ISoftDeletable { public virtual int Id_Fattura { get; set; } public virtual Int16 Id_Tipo_Fattura { get; set; } public virtual Int16 Cancellato { get; set; } } } 删除事件监听器 public class MyDeleteEventListener : DefaultDeleteEventListener { protected override void DeleteEntity(IEventSource session, […]

在将所有导航属性加载(懒惰或渴望)到内存之前对其进行过滤

对于未来的访问者:对于EF6,您最好使用filter,例如通过此项目: https : //github.com/jbogard/EntityFramework.Filters 在我们正在构建的应用程序中,我们应用“软删除”模式,其中每个类都有一个’已删除’布尔值。 实际上,每个类都只是inheritance自这个基类: public abstract class Entity { public virtual int Id { get; set; } public virtual bool Deleted { get; set; } } 举一个简短的例子,假设我有GymMember和Workout类: public class GymMember: Entity { public string Name { get; set; } public virtual ICollection Workouts { get; set; } } public class Workout: Entity { […]

禁用SoftDelete for AbpUserRole

默认情况下, AbpUserRole和AbpRole实现ISoftDelete 。 可以禁用它吗? 我试着这样做: [AbpAuthorize(AppPermissions.Pages_Administration_Roles_Delete)] public async Task DeleteRole(EntityDto input) { using (CurrentUnitOfWork.DisableFilter(AbpDataFilters.SoftDelete)) { var role = await _roleManager.GetRoleByIdAsync(input.Id); var users = await UserManager.GetUsersInRoleAsync(role.Name); foreach (var user in users) { CheckErrors(await UserManager.RemoveFromRoleAsync(user, role.Name)); } CheckErrors(await _roleManager.DeleteAsync(role)); } } 虽然在当前工作单元中禁用了filter,但它不起作用。 该实体标记为已删除。