LLBLGEN相关数组不在实体中填充

时间:2010-11-18 14:48:30

标签: asp.net-mvc-2 orm llblgenpro llblgen

我正在与LLBLGEN斗争,我猜ORM一般。 我创建了一个实体,让我们用一个库示例来解释:

我希望显示一个书籍对象,并返回已借出该书的用户列表。 所以我需要返回包含用户列表的book对象。

DTO Book::
int bookId,
string bookName

另外,我希望在本书中返回借阅该书的用户集合:

List<user> Loans
贷款表可能如下所示:

int id
int userid
int bookid

目前我的贷款实体已经创建了这个:

DTO Loans
int id
User user // user entity
Book book // book entity

我很难理解这个例子在llblgen中是如何工作的。任何人都可以协助指导或指导我的教程吗? 目前,当我拿到与书籍相关的新贷款来更新我的模型书时,我得到了stackoverflow错误。我假设这是在尝试更新我的Book对象时创建某种循环。

感谢

2 个答案:

答案 0 :(得分:1)

我注意到在SQL上运行一个分析器时,sql语句没有在我的关系实体中包含任何连接语句。 这是因为我的域名查询没有包含我的关系的预取项目,我在我的查询中添加了以下内容:

        var query = new DomainSearch<T>
                   {    
                       SearchText = searchText,
                       PrefetchItems =
                           {
                               new Prefetch(typeof(Users))
                           }
                   };

答案 1 :(得分:0)

要确保您正在查找已借出特定图书实体的用户实体列表。这是正确的用例,还是您正在寻找借用特定图书的用户实体列表?

无论如何,LLBLGen对这些案例的支持非常好,可以快速轻松地引用实体之间的关系并使用相关实体。

假设您正在通过独特的BookId / ISBN /等查找一本书....

// Get the specific book entity
BookEntity book = new BookEntity(bookId);

foreach(UserEntity user in book.users)
{
    // do stuff with list of users
}

假设您已经定义了实体之间的关系,就这么简单。