【发布时间】:2012-10-04 17:54:40
【问题描述】:
我正在使用 servicestack,并且我计划将 ormlite 用于数据访问层。 我有这些表 (SQL Server 2005)
Table ITEM
ID PK
...
Table SUBITEM1
ID PK FK -> ITEM(ID)
...
Table SUBITEM2
ID PK FK -> ITEM(ID)
...
Table POST
ID PK
...
Table COMMENT
ID PK
...
Table DOWNLOAD
ID PK
...
Table POST_COMMENT
ID PK
POST_ID FK -> POST(ID)
COMMENT_ID FK -> COMMENT(ID)
Table DOWNLOAD_COMMENT
ID PK
DOWNLOAD_ID FK -> DOWNLOAD(ID)
COMMENT_ID FK -> COMMENT(ID)
我为每个表创建了一个类,并使用注释(自动增量、引用等)映射它们。
我决定为每个“实体”(项目、帖子、评论、下载)创建一个存储库。 每个存储库都包含基本的 CRUD 逻辑,
例如。 1 CommentRepository 有一个 Save(Comment comment, Object relationship) 执行 db.Insert(comment, relationship) 关系是 PostComment 或 DownloadComment。
例如。 2 PostRepository 有一个 Save(Post p) 执行插入到 POST 中。
我不确定这个解决方案,因为存储库接口不同,我无法进行多态查询。
您能否提供任何建议来改进我的 DAL?
感谢您的关注。
【问题讨论】:
标签: repository-pattern servicestack ormlite-servicestack