Kod pierwszy i tożsamość w Azure Table Storage

Pracuję nad małą aplikacją internetową i właśnie trafiłem na punkt rozwoju, w którym muszę zacząć podejmować decyzje dotyczące baz danych. Mój pierwotny plan polegał na tym, aby EF Code First z MSSQL na Azure, ponieważ po prostu upraszcza proces pracy z bazą danych. Jednak badając możliwości hostingu bazy danych na platformie Azure, odkryłem pamięć masową Azure Table, która otworzyła mi świat NoSQL.

Podczas gdy Internet płonie gadaniem o funkcjach NoSQL, jednym z największych powodów, dla których udało mi się zebrać, jest to, że NoSQL przechowuje całe obiekty jako jeden w bazie danych, bez rozbijania danych na różne tabele, co jest dobre dla wydajności. Choć brzmi to atrakcyjnie, EF Code First skutecznie wyeliminował ten problem, automatycznie łącząc obiekty i oddzielając obiekty do bazy danych SQL bez konieczności martwienia się programistów o zapytania.

Moim głównym problemem jest jednak to, że nie mogę znaleźć żadnej dokumentacji do korzystania z rzeczy takich jak EF Code First i ASP.NET Identity z bazami danych NoSQL. Ponieważ moja aplikacja obecnie używa Tożsamości, chciałbym uniknąć konieczności przełączania się na coś innego.

P: Czy możliwe jest użycie kodu pierwszego i / lub tożsamości z tabelami Azure?

Edytuj: Trochę o mojej aplikacji Jako skrajne uproszczenie moja aplikacja pozwala moim użytkownikom tworzyć niestandardowe profile, mieszając i dopasowując wstępnie skonfigurowane typy danych. Na przykład użytkownik może dodać dowolną liczbę obiektów Cytat do swojego profilu, a następnie zdefiniować wartość cytatu (tj. „Bądź sobą; wszyscy inni są już zajęci.”). Lub mogą użyć obiektu filmu, aby zdefiniować kolekcję swoich ulubionych filmów (tj. „Tytuł: Incepcja, rok: 2010”). Średnio użytkownik może łatwo mieć 50 lub więcej takich właściwości na swojej stronie; nie ma ograniczeń co do liczby właściwości, które mogą mieć.

Korzystając z tego przykładu, mogę łatwo zobaczyć, jak zaimplementowałbym go za pomocą Code First (Profile ma listę obiektów Quote i listę obiektów Movie). Nie jestem jeszcze pewien, w jaki sposób zmapuje to bazę danych NoSQL, taką jak tabele Azure. Tak więc, biorąc pod uwagę potrzeby mojej aplikacji, nie jestem pewien, czy przejście z Code First na NoSQL to rozsądna decyzja z funkcjami i funkcjonalnością, którą straciłbym.

questionAnswers(4)

yourAnswerToTheQuestion