Domaをベースにした.NET版のDaoフレームワーク
O/RマッパーとしてEntity FrameworkやNHibernateがフィットするアプリは確かにあると思うのですが、そうは言っても多くのアプリやプロジェクトではSQLを中心としたDaoフレームワークのほうが適していると思っています。
そういうわけで、Domaをベースにして.NET版のDaoフレームワークをC#で少しずつですがつくりはじめています。
おおまかなアイデア。
- 機能的にはだいたいDomaと同じ
- aptに相当するものはVisual Studioのアドインで
- ファイルをセーブしたら即座にチェックをかけたい
- コードは裏で勝手に自動生成したい
- 依存DLLはなしにしたいところだけど、SQLをパースするところでANTLRみたいのを使ってみたい気はある
- エンティティはPOCOを主として考えているけど、DataSetをサポートしてもいいかもと思っている
- DBからエンティティクラスを生成するツールもつくりたい
- これもVisual Studioのアドインで
- とりあえずはSQL ServerとOracle Databaseをサポート
- とりあえずCodePlexで開発
- しばらくは.NET 3.5で開発
- internalの可視性をうまく使って公開APIを明確化したい
Visual Studioのアドインがいばらの道な気がしますねー。どれだけ難しいかさっぱりわかっていないのですが、想像するにしんどうそうです。