【问题标题】:Searching many-to-many relations with Vici CoolStorage使用 Vici CoolStorage 搜索多对多关系
【发布时间】:2010-10-04 18:30:16
【问题描述】:

对于用于管理书名等的应用程序,我使用 CoolStorage 作为 ORM。

数据库有一个名为“titles”的表。每个标题可以有 n 个作者,存储在“作者”表中。这两个表是通过链接表'titles_authors'连接的,是纯的。

当我尝试过滤作者的标题时,出现异常:

无法将“QueryExpression”类型的对象转换为“System.String”类型

有人知道如何按作者过滤标题吗?

【问题讨论】:

    标签: coolstorage


    【解决方案1】:

    在您的 Title Class 中进行设置:

    [ManyToMany("titles_authors", Pure = true, ForeignLinkKey = "AuthorId", LocalLinkKey = "TitleId")]
    public abstract CSList<Author> Authors{ get; set; }
    

    在 Authors 类中反之亦然...

    然后您可以通过以下方式访问:

    CSListtitlesByAuthor = Title.List("Authour.Name = "Bob Thorn");

    【讨论】:

    • 感谢您的回复!我已经这样做了:[ManyToMany("titles_authors", ForeignKey = "id", ForeignLinkKey = "author_id", LocalKey = "id", LocalLinkKey = "title_id", Pure = true), Prefetch] public abstract CSList作者{得到;放;但是,当我检索带有作者过滤器的标题列表时,不会返回任何标题。有什么我做错了吗?我没有收到任何错误。如果您需要更多信息,请告诉我。提前致谢
    • 抱歉耽搁了这么久。你可能已经解决了这个问题。我没有注意到这个回复。您需要更多帮助吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-30
    • 2015-10-29
    • 2019-05-10
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多