Mam obecnie projekt, który wykorzystuje Entity Framework Code-First migrations i Web Publish, gdzie connectionStrings są przechowywane w pliku web.config.WebPublish Code-First Migracje z zewnętrznym plikiem connectionStrings.config
Nadszedł czas, aby przenieść connectionStrings poza web.config, i jako taki umieściliśmy je w pliku connectionString.config, i powolne przekształcanie ich na webpublish.
connectionStrings.config odpowiedniej sekcji
<connectionStrings>
<!-- Testing Databases -->
<add
connectionString="server=testserver;database=testdatabasename;user id=someid;password=*******"
name="dbname"
providerName="System.Data.SqlClient"
/>
</connectionStrings>
web.config
<connectionStrings configSource="config\connectionStrings.config">
</connectionStrings>
Teraz kiedy załadować okno dialogowe Publish Web (Build -> Publish projektu), na karcie Ustawienia I otrzymasz komunikat o błędzie:
No Databases found in the project
Wskazuje to, że okno dialogowe nie jest inteligentne. wystarczy zobaczyć configSource i załadować dane z tego miejsca. Mogę potwierdzić, że connectionStrings są poprawnie załadowane w moim środowisku programisty, i mogę również potwierdzić, że slowcheetah poprawnie przekształca konfigurację do swojego środowiska produkcyjnego.
Czy istnieje sposób, aby program Visual Studio Publish wyświetlał konfigurację konfiguracji i zezwalał na pierwsze migrację kodu?
[This] (http://stackoverflow.com/questions/16733042/publishing-external-configuration-files-in-asp-net-mvc-project-using-visual-stud) może być pomocne dla ciebie. –
@Siva Niestety to nie problem, inne pliki konfiguracyjne zostały wdrożone. To jest problem z Visual Studio strony rzeczy :( –
Mam dokładnie ten sam problem, w VS 2015 CTP, choć jestem prawie pewien, że mogę replikować go na VS2013 również .Jeśli używam zewnętrznego pliku ConnString.config, ciąg połączenia nie jest pobierany przez okno publikowania w sieci Web i nie mogę używać migracji z pierwszeństwem kodu.Czy ktoś znalazł obejście tego problemu? –