当我将 ASP.NET Core 2.0 Web 应用程序部署到 Azure 应用服务时,该应用程序失败。
这就是项目中正在使用的内容。
- ASP.NET Core 2.0 MVC Web 应用程序
- Visual Studio 2017 企业版
- SQLite 数据库
- 代码优先 Entity Framework
- Azure 应用服务
当我在 Visual Studio 本地运行该 Web 应用程序时,该应用程序运行良好。当我将其发布到 Azure Web 服务时,会出现问题,但它无法连接到数据库。导航到已部署的 Web 应用程序 URL 时出现以下错误:
SqliteException:SQLite 错误 1:“没有这样的表:库存”。
我已多次尝试将更新迁移或添加迁移应用到数据库,但仍然会导致部署到时找不到表Azure 服务器。
这是我在 Startup.cs 文件中定义的 SQLite 连接。
// Add Inventory DB
services.AddDbContext<InventoryContext>(options =>
options.UseSqlite("Data Source=Inventory.db"));
// Add User DB
services.AddDbContext<UserContext>(options =>
options.UseSqlite("Data Source=User.db"));
// Add Purchase Order DB
services.AddDbContext<PurchaseOrderContext>(options =>
options.UseSqlite("Data Source=PurchaseOrder.db"));
最佳答案
按照@Derek解决方案,我修改了appsettings.json上的连接字符串,因为我使用Configuration.GetConnectionString来获取连接字符串,并将sqlite db移动到App_Data文件夹到 wwwroot..
"ConnectionStrings": {
"MyAppContext": "Data Source=./wwwroot/App_Data/myapp.db"
}
关于c# - 将项目部署到 Azure Web 服务时,ASP.NET Core 2.0 Web 应用程序失败并出现 SQLite 错误,但在本地环境中运行良好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47839352/