我想我的部署ASP.NET MVC5網站測試以下這個教程: https://docs.microsoft.com/en-us/aspnet/web-forms/overview/deployment/visual-studio-web-deployment/deploying-to-iis無法在Web部署執行代碼首先遷移
在關於「配置部署的應用程序數據庫」的部分點2,我需要檢查一個在我的屏幕上不可用的盒子(執行Code First Migrations)。我的問題如下:我有一個洋蔥體系結構,因此我的包含實體框架上下文的項目位於一個單獨的項目中(並且正在部署asp.net MVC 5項目),這意味着我不能在此項目中使用enable-migrations
。我也改變了我的連接字符串,以適應我的上下文的名稱精簡在這篇文章中:https://stackoverflow.com/a/32866872/4714502。另一方面,我的DbSet與我的實體框架類有不同的名稱,這是否會成爲問題?我這樣做是因爲我的表的語法非常尷尬,並且是一個要求(我不想在我的應用程序中使用這個命名約定)。假設一個表Web_Documents:
DbSet<Web_Documents> WebDoc { get; set; }
至於結構,我有:
- 實體(POCO)
- 庫(上下文是這裏)
- 服務
- UI(MVC)(這裏部署)
依賴從4到1
這裏是我的app.config在庫:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
<connectionStrings>
<add name="PrincipalServerContext" connectionString="Data Source=SMRFG12APP13\SQLEXPRESS;Initial Catalog=PrincipalServerDB;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
我的數據庫的名字是PrincipalServerDB
和上下文PrincipalServerContext
現在我走了想法,真的不知道我還能做什麼?
我已經有app.config,它應該是完全相同的Web.config?做了這些步驟,但它不起作用。運行Update-database,我看不到要在'PMC'中運行的遷移。我將添加我的app.config,但Web.config更長 –
@FlexabustBergson在' configSections>'之後添加''。 PMC中標記爲啓動項目和默認項目嗎? https://stackoverflow.com/a/26882750/3850405 –
Ogglas
是的,我確實標記了兩個 –