Не успях да накарам AspNet.Identity на Microsoft да работи с postgresql, изглежда е проектиран да работи с SQL Server и не признава наличието на различна конфигурация на контекста на данните, независимо какво правите.
Сега всичко работи с помощта на външна библиотека, така че ще дам отговор на въпроса си, в случай че някой друг се сблъска с този проблем.
Следвах инструкциите в следния проект (кредит на vincechan):
Стъпка 2 беше малко проблематично. След като импортирах проекта в моето решение, трябваше да разреша референтни проблеми в него. В конзолата за управление на пакети можете да инсталирате липсващите пакети и/или да актуализирате тези, които са остарели. Окончателната ми конфигурация изисква използването на:
- Npgsql 3.2.2 на моя основен проект (използвайки EntityFramework6.Npgsql )
- Npgsql 2.2.7 върху изтегления проект (с помощта на Npgsql.EntityFramework )
След като сте подготвили всичко, добавете нова миграция (Add-Migration <migration-name
) и актуализирайте вашата база данни (Update-Database
).
Сега изпълнете SQL скрипта, който създава таблици, свързани с идентичността, те няма да бъдат създадени автоматично подобно на SQL Server. Скриптът е включен в проекта (файл PostgreSQLIdentity.sql
).
Сега всичко трябва да работи. Извинете за лошото форматиране на този отговор.