Entity Framework 4.1 Code Najpierw działa świetnie z SQLEXPRESS
na localhost
. Jednak jestem teraz gotowy do połączenia ze standardowym SQL 2008 server
.EF 4.1 CF: odmówiono uprawnienia do bazy danych w bazie danych 'master'
Utworzono nową bazę danych "NewEfDatabase".
Następnie zmieniono moją "
ApplicationServices
"connectionString
wWeb.config
, aby wskazywała na moją nową bazę danych ze zintegrowanymi zabezpieczeniami.
Ale wtedy ten błąd:
"CREATE DATABASE permission denied in database 'master'.
"
Więc ...
a) Jakie uprawnienia ma EF 4.1 CF musi na wspomniany serwer SQL, aby wykonać swoją pracę ?
b) Czy mogę ustawić pustą bazę danych na SQL 2008
dla EF 4.1 CF, czy też muszę pozwolić, aby wykonała dla mnie wszystkie te czynności? (Nie jestem pewien, że mój DBA ceniłaby pozwalając mój EF aplikację mają prawa do niczego poza konkretnej bazy danych)
Nie, nie próbowałem tego. Zrobię to. W takim przypadku należy migrować moje dane i schemat z mojego lokalnego SQLEXPRESS? Pomyślałem, że może zbudować bazę danych w mojej docelowej lokalizacji. Ale zapomniałem o utworzonym kroku upuszczania. –
@Dan: Tak, musisz przeprowadzić migrację bazy danych do instancji docelowej, jeśli ustawisz inicjator na wartość 'null'. W tym przypadku schemat DB i model EF muszą się zgadzać, EF nie zaktualizuje ani nie odtworzy schematu i prawdopodobnie wyrzuci wyjątki, jeśli schemat i model nie pasują do siebie. – Slauma
Sposób, w jaki sobie z tym poradzę, polega na utworzeniu listy nazw komputerów programistów, a ja nazywam tylko SetInitializer (aby ponownie utworzyć bazę danych), jeśli aplikacja działa na jednym z tych komputerów. W przypadku każdego innego komputera zakładam, że baza danych zostanie już tam wdrożona. –