如何解决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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。