Domaをベースにした.NET版のDaoフレームワーク

O/RマッパーとしてEntity FrameworkやNHibernateがフィットするアプリは確かにあると思うのですが、そうは言っても多くのアプリやプロジェクトではSQLを中心としたDaoフレームワークのほうが適していると思っています。
そういうわけで、Domaをベースにして.NET版のDaoフレームワークC#で少しずつですがつくりはじめています。

おおまかなアイデア

  • 機能的にはだいたいDomaと同じ
  • aptに相当するものはVisual Studioのアドインで
    • ファイルをセーブしたら即座にチェックをかけたい
    • コードは裏で勝手に自動生成したい
  • 依存DLLはなしにしたいところだけど、SQLをパースするところでANTLRみたいのを使ってみたい気はある
  • エンティティはPOCOを主として考えているけど、DataSetをサポートしてもいいかもと思っている
  • DBからエンティティクラスを生成するツールもつくりたい
  • とりあえずはSQL ServerOracle Databaseをサポート
  • とりあえずCodePlexで開発
  • しばらくは.NET 3.5で開発
  • internalの可視性をうまく使って公開APIを明確化したい

Visual Studioのアドインがいばらの道な気がしますねー。どれだけ難しいかさっぱりわかっていないのですが、想像するにしんどうそうです。