【发布时间】:2016-11-20 20:20:36
【问题描述】:
我正在努力删除我的应用程序中的 ApplicationUser。我不介意硬删除,但这给了我很多挑战。用户可以创建其他用户可以评论的帖子。如果其他用户对用户的帖子发表了评论,则无法硬删除该用户,因为删除尝试级联到帖子(被现有 cmets 阻止)。
我也可以使用软删除方法,但在大型应用程序中处理这似乎是一场噩梦。我发现我必须在提及用户的任何内容周围添加if (!user.IsDeleted){...}(评论和发布作者参考、登录、注册以及帐户/管理控制器中的几乎所有内容),并且必须考虑在所有未来添加到代码。
我已经尝试搜索处理用户删除的既定方法,但我似乎找不到任何方法(除了快速文章,如“如何向您的用户添加“IsDelete”属性,这还不够含义的详细信息)。那么有没有适当的方法来处理用户删除?似乎最好的方法是开始用级联弄脏我的手,但我不确定从哪里开始。
【问题讨论】:
-
在显示用户的一条帖子时,您想向用户显示什么?
-
“已删除”代替作者。帖子内容仍然可以显示
-
所以我想它们实际上应该被检索,但只显示它们的名字以外的东西。
标签: c# asp.net asp.net-mvc entity-framework