Właśnie zaczynam projekt w ASP.Net MVC z LINQ na Entities i zastanawiałem się, czy istnieje ładny, czysty sposób definiowania modeli, które tworzy odpowiednie tabele w bazie danych dla mnie. Jestem najbardziej obeznany z Django (pod względem frameworków MVC) i szukam odpowiednika .Net z models.py
, więc mogę mieć wszystko wersjonowane. Jakieś pomysły? Byłoby jeszcze lepiej, gdyby miał jakąś formę migracji schematu, a la django-evolution i tym podobne.Tworzenie modeli w ASP.NET MVC
Odpowiedz
Myślę, że to, co chcesz zrobić, to zmienić to pytanie. Elementy mogą być automatycznie generowane z bazy danych, więc problem polega po prostu na użyciu mechanizmu .NET w celu utrzymania schematu bazy danych. Ponieważ nie używasz NHibernate, czego wymagają te inne rozwiązania, sugerowałbym użycie MigratorDotNet. MigratorDotNet wykorzystuje dokładnie ten sam pomysł jak Ruby on Rails migracje:
- Baza danych śledzi wersji
- każdym razem, gdy chcemy zmienić schemat, piszesz małą klasę do obsługi aktualizacji (i ewentualnie , downgrade)
- Przypisywanie tych klas rozkaz wykonania
- Jeśli baza danych jest nigdy nie up-to-date, po prostu wykonać metody uaktualnić klas w celu
Ponieważ będziesz zregenerować tylko w czasie kompilacji twoich jednostek, polecam uruchamiać skrypty migracji, a następnie regenerować twoje jednostki, jako część procesu kompilacji. MigratorDotNet jest już dostarczany z an MSBuildTarget, a dodanie go będzie wymagać tylko kilku kliknięć.
Castle Project active record is a nice way of doing it.
Jeśli oferuje możliwość podobne do Ruby on Rails Active Record.
Inną opcją jest użycie NHibernate z FluentNhibernate, która automatycznie mapuje model na podstawie konwencji. Możesz także zastąpić mapowanie, aby dostosować je do swoich potrzeb.
- 1. ASP.NET MVC - widok z wielu modeli
- 2. Asp.net Mvc: Tworzenie prostej cms
- 3. Jak przekazać wiele modeli w widoku w ASP.NET MVC?
- 4. Tworzenie ról w Asp.net Tożsamość MVC 5
- 5. Tworzenie bułką tartą ścieżki w ASP.NET MVC
- 6. Jak przekazać wiele modeli do widoków częściowych w ASP.NET MVC
- 7. wiązania z zagnieżdżonych modeli dziecięcych i PartialViews w ASP.NET MVC
- 8. Jak przetestować niestandardowe bindery modeli w środowisku ASP.NET MVC?
- 9. ASP.NET MVC 4, wiele modeli w jednym widoku?
- 10. Tworzenie dla ASP.NET-MVC bez Visual Studio
- 11. Uprawnienie ASP.NET MVC i pozwolenie na używanie klas modeli
- 12. angularjs i ASP.NET MVC: najlepsza strategia dla modeli klienckich
- 13. Asp.net MVC 4 API i Knockout.js: Generowanie modeli Knockout.js
- 14. Cakephp wypalić w asp.net mvc
- 15. ASP.net MVC tworzenie zawartości komórki jako łącze w Grid.MVC
- 16. Tworzenie globalnych zmiennych stałych w asp.net MVC 5
- 17. Tworzenie właściwości ViewResults poza kontrolerami w ASP.NET MVC
- 18. ASP.net MVC: Tworzenie SelectList w widoku lub akcji?
- 19. Najlepszy sposób na tworzenie raportów w ASP.NET MVC
- 20. Model zawierający listę modeli (MVC-3, Razor)
- 21. ASP.NET MVC Wielowątkowość
- 22. ReturnURL w ASP.NET MVC
- 23. LinkButton w ASP.NET MVC
- 24. Buforowanie w asp.net-mvc
- 25. Tworzenie "kanałów" z wielu różnych modeli Railsów
- 26. Efektywne tworzenie "feedu" z wielu modeli szyn?
- 27. ASP.NET MVC architektura aplikacji "wytyczne"
- 28. tworzenie obszaru w projekcie MVC
- 29. złożonych modeli i częściowe widoki - model kwestia wiąże w ASP.NET MVC 3
- 30. Użycie pliku moment.js do formatowania dat widoku modeli w środowisku ASP.NET MVC
Projekt zamkowy korzysta z NHibernate, a nie LINQ do jednostek, nie? –
prawda, moja zła, nadal jest dobrą alternatywą, jeśli chcesz mieć funkcjonalność podobną do migracji – Konstantinos