#programowanie #csharp #dotnet #aspnet #mvc #webdev
Mam problem którego nie mogę rozwiązać, żadne dotychczas postowane w necie rozwiązanie nie zadziałało.
Mam sobie web api w mvc - prosta tabela, pozwala na logowanie się przez różne serwisy (fb, google itp) jak i normalnie rejestrować. Po zalogowaniu każdy ma dostęp do tabeli tworzonej przez siebie i tylko on ją widzi. Na kompie działa wszystko cacy, problem pojawia się po wrzuceniu w chmurę. Wyskakuje bardzo popularny błąd:
The model backing the 'ApplicationDbContext' context has changed since the database was created. Consider using Code First Migrations to update the database (http://go.microsoft.com/fwlink/?LinkId=238269).
Próbowałem update'ować EF, próbowałem robić od nowa bazy danych, bawiłem się connectionstringami, dodawałem Database.SetInitializer(null); , no nic nie pomaga i ciągle jest ten sam błąd w chmurze. Pojawia się od razu po próbie zalogowania.
Ktoś ma jakiekolwiek pomysły? Jeśli potrzebujecie kodu to wrzucę zaraz na pastebin ale nie wiem dokładnie co (web.config, web.release, zawartość migrations?)
Mam problem którego nie mogę rozwiązać, żadne dotychczas postowane w necie rozwiązanie nie zadziałało.
Mam sobie web api w mvc - prosta tabela, pozwala na logowanie się przez różne serwisy (fb, google itp) jak i normalnie rejestrować. Po zalogowaniu każdy ma dostęp do tabeli tworzonej przez siebie i tylko on ją widzi. Na kompie działa wszystko cacy, problem pojawia się po wrzuceniu w chmurę. Wyskakuje bardzo popularny błąd:
The model backing the 'ApplicationDbContext' context has changed since the database was created. Consider using Code First Migrations to update the database (http://go.microsoft.com/fwlink/?LinkId=238269).
Próbowałem update'ować EF, próbowałem robić od nowa bazy danych, bawiłem się connectionstringami, dodawałem Database.SetInitializer(null); , no nic nie pomaga i ciągle jest ten sam błąd w chmurze. Pojawia się od razu po próbie zalogowania.
Ktoś ma jakiekolwiek pomysły? Jeśli potrzebujecie kodu to wrzucę zaraz na pastebin ale nie wiem dokładnie co (web.config, web.release, zawartość migrations?)
- Najlepsze
- Wszystkie komentarze






Ogólnie chodzi o to, że prawdopodobnie connectionstring jest do Twojej lokalnej bazy na kompie, a na tamtym hostingu jest inna baza i muszą w niej się odpalić migracje, przeważnie przy publikacji przez VS jest taka opcja.
masz coś takiego przy starupie aplikacji?
Database.SetInitializer(new MigrateDatabaseToLatestVersion)?
możesz dostac sie do zdalnej bazy z poziomu ssms?
mozesz puscic recznie update-database na bazie zdlanej z konsoli w VS?
1. Uruchom visual studio
2. Ustaw connection string produkcyjny
3. W nuget manager console wpisz komendę "Update-database"
4. Aplikacja działa
@lukpep: jest podobnie na appharbor, jeszcze raz sprawdzę connectionstringi, ale wydaje mi się że jest ok
do zdalnej bazy przez ssms nie probowalem sie dostac, aktualizowalem jedynie lokalne bo myslalem ze usuniecie _MigrationHistory pomoze ale nie pomaga
initializer powoduje tylko że mi wywala błąd nawet na kompie
@Nieann: próbowałem 10 razy wcześniej, teraz użyłem -Force i w końcu zajarzyło... ( ͡° ͜ʖ ͡°)