如何同时为一对多和多对多设置持久化对象? [开发速递]
How to set up persistent object for one-to-many and many-to-many at same time? [DevExpress]
我对下一个方案有疑问,我附加了 it.I 想从我的数据库中查询只有一个带有“Manufacturer
”的对象 class。喜欢:
var res = new XPQuery<Manufacturer>(session);
然后在LINQ中查询所有与我的病情相关的信息。
我尝试了 XPLiteObject, XPObject, Association attribute, NoForeignKey Attribute, XPOCollection
和很多东西,但没有任何帮助。
我尝试了很多方法,每次我都有新的异常,比如:
SelectMany - 不支持方法。
无法在 table 中设置外键。
重复的主键。
我的问题是:如何描述 classes 从 db 中正常提取数据?
更新:
我现在的解决方案是:在每个对象上使用 .ToList()
然后使用 linq-query 连接数据并进行所需的查询。
var manufacturer = new XPQuery<Manufacturer>(session).ToList();
var cars = new XPQuery<Car>(session).ToList();
var countries = new XPQuery<Country>(session).ToList();
var result = from m in manufacturer ....
所以,我找到了解决问题的方法。
我下载了可以为 visual studio 添加模板的 DevExpress。
然后我 select 将新项目添加到名为“DevExpress ORM DataModel Wizard”的项目中。
这个向导can create persistent objects for existing database。
之后我可以使用下一个语法查询数据库:
var manufacturer = new XPQuery<Manufacturer>(session).Select(x => x....)...;
但是如果你想在你的 LINQ 查询中使用 .SelectMany() 你应该使用 .ToList() 然后使用 .SelectMany()。当我尝试加入或执行其他一些与 LINQ 相关的操作时,我遇到了很多问题。好吧,如果你有一些错误,首先在 .Select() 之后尝试 .ToList() 然后执行你的操作。
我对下一个方案有疑问,我附加了 it.I 想从我的数据库中查询只有一个带有“Manufacturer
”的对象 class。喜欢:
var res = new XPQuery<Manufacturer>(session);
然后在LINQ中查询所有与我的病情相关的信息。
我尝试了 XPLiteObject, XPObject, Association attribute, NoForeignKey Attribute, XPOCollection
和很多东西,但没有任何帮助。
我尝试了很多方法,每次我都有新的异常,比如: SelectMany - 不支持方法。 无法在 table 中设置外键。 重复的主键。
我的问题是:如何描述 classes 从 db 中正常提取数据?
更新: 我现在的解决方案是:在每个对象上使用 .ToList() 然后使用 linq-query 连接数据并进行所需的查询。
var manufacturer = new XPQuery<Manufacturer>(session).ToList();
var cars = new XPQuery<Car>(session).ToList();
var countries = new XPQuery<Country>(session).ToList();
var result = from m in manufacturer ....
所以,我找到了解决问题的方法。 我下载了可以为 visual studio 添加模板的 DevExpress。 然后我 select 将新项目添加到名为“DevExpress ORM DataModel Wizard”的项目中。 这个向导can create persistent objects for existing database。 之后我可以使用下一个语法查询数据库:
var manufacturer = new XPQuery<Manufacturer>(session).Select(x => x....)...;
但是如果你想在你的 LINQ 查询中使用 .SelectMany() 你应该使用 .ToList() 然后使用 .SelectMany()。当我尝试加入或执行其他一些与 LINQ 相关的操作时,我遇到了很多问题。好吧,如果你有一些错误,首先在 .Select() 之后尝试 .ToList() 然后执行你的操作。