ドメインモデルでエンティティクラスを表すためにインターフェースを使用しています。LinqToSqlを使用することにより、これらの具体的な実装があります。サービスレイヤーが新しいエンティティをインスタンス化するために使用する各LinqToSqlクラスにファクトリメソッドを追加しました(コントローラーのDataBind属性がインスタンス化するのとは対照的です)。
MonoRailのデフォルトのDataBinder実装は、インターフェースとして定義されているプロパティを無視します。
理想的には、MonoRailでデータレイヤークラスをインスタンス化する必要はありません。インターフェイスの要点は、これらの懸念を分離することです。
また、LinqToSql以外の具象クラスの別のセットを作成する必要はありません。このクラスの唯一の仕事は、レイヤー間での変換です。
ここで本当に長い一日の終わりです。誰かが慈悲を持って、私たち自身の実装でオーバーロードする必要があるIDataBinderの部分を指摘したり、私たちが試みる可能性のある他のアプローチを示唆したりできますか?;-)