DevExpress XPO包装了现有的表关系

问题描述

| 我正在尝试XPO,并尝试包装一些现有表。有没有人有这样做的经验?我遇到的问题是确定XPO如何确定关系的链接字段的名称。 例如,我有两个表, 商家(MerchantID,ProcessorID等)与处理器链接1到1 处理器(ProcessorID等...)通过商家将1链接到许多 DevExpress表示要建立以下关系:
public class Merchant : XPLiteObject
{
    [Association(\"Processor-Merchants\")]
    public Processor Processor;
}

public class Processor : XPLiteObject
{
    [Association(\"Processor-Merchants\",typeof(Merchant))]
    public xpcollection Merchants {
        get { return GetCollection(\"Merchants\"); }
    }
}
但是我的问题是,XPO如何知道将这些关系链接在一起的关键领域是什么?本示例在XAP应用程序中编译并运行,但是每种关系都缺少数据(可能是由于它不知道哪些字段将表链接在一起的事实)。 我是否需要添加一些语法以建立这些关系?或者,也许需要一些额外的代码? DevExpress文档说上述内容应该可以,但不能。 有什么帮助吗?     

解决方法

        在尝试了不同的语法之后,我发现如果将以下内容添加到Merchant类中,它将可以正常工作:
public class Merchant : XPLiteObject
{
    [Persistent(\"ProcessorID\")]
    [Association(\"Processor-Merchants\")]
    public Processor Processor;
}
    ,        PersistentAttribute既可用于将类映射到表,也可用于将属性映射到列。 如果将其省略,则表名/列名将与类名/属性名相同,如果缺少,则将创建表名/列。这就是您第一次尝试时发生的事情。 http://documentation.devexpress.com/#XPO/clsDevExpressXpoPersistentAttributetopic