我正在使用 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 吗?
感谢您的关注。