.net 如何用简单的代码使XPO一对一的关系?

nbysray5  于 2023-06-25  发布在  .NET
关注(0)|答案(1)|浏览(98)

很快,这是一个代码。这不管用
1.我尝试在两个表中插入具有相同键的属性。

  1. DevExpress票证也无法解析First TicketSecond Ticket
    1.参见First Ticket链接。见最后的答复。我在这里就是干这个的。不工作。
    DevExpress First TicketLast Comment->要实现此关系,请不要从设计器的工具箱中添加任何关系对象。相反,创建两个属性-MasterCustomers类的MasterBusinessPartner类型的属性和MasterBusinessPartner类的MasterCustomer类型的属性。这将足以生成您在第一个代码片段中演示的代码。如果要实现其他同步逻辑,请执行类似于如何:实现一对一关系主题中,您可以重写OnChanged方法,如ORM向导一对一关系分部类票证中所述。
    我的架构(2个表一对一)***每个菜单只有一个MenuBLOB行。***x1c 0d1x
[Persistent("Menu")]
public class Menu : XPLiteObject
{
    [Key, Association("kk")]
    public MenuBLOB MenuKey { get; set; }

    public long MenuID { get; set; }

    public Menu(Session session) : base(session) { }      
    public Menu(Session session, XPClassInfo classInfo) : base(session, classInfo) { }
}

[Persistent("MenuBLOB")]
public class MenuBLOB : XPLiteObject
{
    public long MenuID { get; set; }
    public string Base64Value { get; set; }

    [Key, Association("kk")]
    public Menu MenuKey { get; set; }

    public MenuBLOB(Session session) : base(session) { }
    public MenuBLOB(Session session, XPClassInfo classInfo) : base(session, classInfo) { }
}

引发了类型为“System.StackOverflowException”的异常

uwopmtnx

uwopmtnx1#

为KeyAttribute创建一个不同的属性(在本例中,MenuId似乎是最有可能的)

相关问题