Przepraszam, jeśli używam niewłaściwej terminologii tutaj. Wciąż jestem bardzo w świecie ORM, ale bawię się z MongoDb i naprawdę kocham to, co widzę. Jedną z rzeczy, ja nie lubiących to:Sterowniki MongoDb na C#, czy można je zawrzeć w ogólnej sesji?
var books = bookRepository.GetCollection<BsonDocument>("books");
I
foreach (var book in books.FindAllAs<Book>())
{
Console.WriteLine("Author: {0}, Title: {1}", book.Author, book.Title);
}
znalazłem kilka tutoriali na owijanie NoRM in a session ale nie mogę dowiedzieć się, jak to zrobić za pomocą CSharp Kierowcy (ci, których Mongodb zaleca/ma na swojej stronie github).
Co naprawdę chciałbym zrobić, to coś podobnego do pierwszego przykładu:
var bookRepository = MongoRepository<Book>(); // probably should use IoC to resolve this
i
foreach (var book in books.FindAll())
Voila! Prawdopodobnie nie jestem pierwszą osobą, która tego chce, używanie ciągów wszędzie wydaje się nieco nudne, chociaż przyznaję, że samouczek jest tylko przykładem. Czy istnieje przykład "najlepszych praktyk" do takiego ustawienia?
Edycja: Daj mi znać, jeśli to jest szalona rozmowa, a nie jak robić rzeczy w Mongo, znowu jest to mój pierwszy testowy projekt.
Co pytasz o dokładnie? W ORM nadal musisz skonfigurować ORM, aby wiedział, który obiekt jest przechowywany w której tabeli; to zmusza cię do strun. Możesz na pewno przenieść ciąg znaków o nazwie kolekcji z wywołania "pobierz repozytorium" do kroku "Konfiguruj repozytoria", podobnego do odwzorowań Fluent Nhibernate. – Avish