4

NoSQL の話に入ったばかりなので、これが簡単な質問である場合はご容赦ください。より一般的な操作のために汎用リポジトリを使用して、リポジトリ タイプ パターンを実装しようとしています。

私が遭遇したことの 1 つは、この考えを台無しにしてしまったことです。使用する予定のコレクションを取得するには、コレクションの名前に文字列値を渡す必要があるということです。

var collection = database.GetCollection<Entity>("entities");

これは、オブジェクト タイプをコレクション名にマップできるように、コレクション名をハード コードするか、ルックアップとして機能する辞書をどこかにコーディングする必要があることを意味します。

他の人はこれをどのように処理していますか?

4

3 に答える 3

6

できることは「セミハードコード」です。コレクションの名前をクラス名に入れて参照できます。

public class Entity {
  public static readonly string Name = "entities";
}

var collection = database.GetCollection<Entity>(Entity.Name);
于 2012-06-30T23:13:55.697 に答える