C#删除与另一个对象相关的对象的问题

Posted

技术标签:

【中文标题】C#删除与另一个对象相关的对象的问题【英文标题】:C# Delete problem with an object relating to another object 【发布时间】:2010-12-02 09:38:28 【问题描述】:

我们有两个程序集 A 和 B,其中 B 从 A 延伸。 B 在 A 中有一个类型的属性

如果我们在数据库中有 B 的记录,并且我们删除了 B 使用的 A,则该记录将被删除

我们如何在代码中防止这种情况发生,因为如果我们可以或不能删除 A,我们将显示删除链接。 因为 B 总是需要 A 的类型,如果 A 被 B 的记录使用,则 A 可能不会被删除。

我们使用 NHibernate 作为 ORM。

【问题讨论】:

【参考方案1】:

在 ORM 中使用级联功能,并正确利用它 您可以先阅读论坛中的This Question。

【讨论】:

【参考方案2】:

您可以在sql中检查关系 或触发可用于防止删除的女巫

对于删除链接,我认为您必须检查代码并为其编写方法

【讨论】:

以上是关于C#删除与另一个对象相关的对象的问题的主要内容,如果未能解决你的问题,请参考以下文章

NSPredicate 基于此对象是不是与另一个相关?

如何在核心数据中保存与另一个对象相关的对象?

从 Datagridview 获取与另一列 c# 中某些值相关的值

按属性将对象数组与另一个对象的键进行比较

删除对象的 CoreDataGeneratedAccessors 似乎没有被删除

删除关系对象时更新 NSFetchedResultsController 对象