Skip to content

Mikrobank – prawdziwa baza danych, część 2 – konfiguracja Entity Framework

Setup lokalny

Migracje w .Net core EF dodaje się z command line’a. Ale żeby móc to zrobić, wpierw potrzebujemy zainstalować narzędzia do tworzenia migracji i baz EF.
Jak to zrobić opisano tutaj:

Ważne, żeby nie zapomnieć RĘCZNIE wkleić do project file poniższej referencji: https://stackoverflow.com/a/47079152/148158

Następnie:

I to pozwala już mi na stworzenie pierwszej migracji:

Resultat: Jest baza!

Mogę od teraz dodawać konta testowe, które są w stanie przetrwać restart aplikacji. Albo innymi słowy – mam już CR_D z CRUD 🙂

Setup na AppHarbor

O ile lokalnie poszło gładko, to z AppHarbor musiałem się trochę namęczyć.

Najpierw zainstalowałem SQL Server AddOn

A potem już tylko próbowałem zrozumieć co jest napisane w artykule o używaniu Sequelizera

Zmarnowałem naprawdę dużo czasu, bo uwierzyłem że AppHarbor podmieni automatycznie mój connection string zdefinowany w appsettings.json, jeżeli tylko nadam mu odpowiedni klucz. Tę samą nazwę wystarczyłoby tylko ustawić jako ‘connection string alias’ w konfiguracji SQL add-ona, i zadziałałaby MAGIA.

If you want AppHarbor to replace the connectionString you have to define one with the relevant name in your application’s configuration files.

Więc dodałem connection string do mojego pliku konfiguracyjnego.

Następnie odczytałem wartość tego ustawienia w metodzie ConfigureServices

Ale magia nie chciała działać, i po wielu próbach poddałem się i postanowiłem wykorzystać wyjście B, czyli wykorzystać fakt, że AppHarbor ustawia zmienną systemową o nazwie SQLSERVER_CONNECTION_STRING.

Ostatecznie działający kod który wykorzystuje bazę SQL Server na AppHarbor wygląda tak:

Published inMikrobank

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *