シンプルな ASP.NET MVC + OpenID + NHibernateアプリ (MSSQL Server DB 上) があります。アプリは厳密にシングル テナントであり、2 つのロール ( AdminとUser ) のみで複数のユーザーをサポートします。
このアプリをマルチテナント アプリに変換したいと考えています。私の要件は限られています: Accountの概念を導入する必要があるだけです。各アカウントには独自のユーザー セットがあり、元の非マルチテナント アプリとまったく同じように動作します。アカウント間のやり取りはありません。
この移行を最も簡単な方法で行うためのベスト プラクティスは何ですか? 特に、 Account_idフィールドを使用してすべてのエンティティとリポジトリを手動で更新し、ロジックもアップロードできます。しかし、この側面を何らかの形で抽象化するよりスマートなアプローチがないかどうか疑問に思っています。
Ps: アプリは非常に軽いので、アカウントごとに新しい DB インスタンスを導入したくありません。