添加级联删除后无法生成SSDL

本文关键字:SSDL 级联 删除 添加 | 更新日期: 2023-09-27 18:06:51

我试图模拟(与设计师)这种情况:我有一个客户端(抽象)和两个派生实体:PrivatePublic。此外,我有一个地址和一个订单实体。Private 具有 1个"永久地址"属性,Public 具有 1个"注册地址"属性。我这样建模:

私人(0 . . 1)->(1)地址和公共(0 . . 1)->(1)地址

现在,每个客户端,可以有更多的订单。1订单收货地址:

客户端(1)->(*)订单
订单(0 . . 1)->(1)地址

所有的地址都定义为导航属性。

如果我现在构建模型,它可以工作,但是当我从上下文中删除客户端时,在我的地址表中保留地址。所以我尝试为每个连接添加一个END1级联删除地址实体。

在构建时,我得到以下错误:

地址相关实体之间的连接

由名为"CsdlToSsdlAndMslActivity"的活动生成的SSDL无效,并且有以下错误:
关系"{1}"上的结束"{0}"不能指定操作,因为它的多重性是"*"。不能在具有多个'*'的端指定操作。

怎么了?

添加级联删除后无法生成SSDL

当聚合实体被删除时,不能级联删除。确保将Cascade放在正确的端,即代表父/所属实体的端

在您的情况下,我会尝试将Cascade放在End2上。