【发布时间】:2015-10-08 22:04:26
【问题描述】:
我使用以下教程使用 MySQL 创建了一个 ASP.NET EF 应用程序:http://www.asp.net/identity/overview/getting-started/aspnet-identity-using-mysql-storage-with-an-entityframework-mysql-provider 它可以工作,但我不喜欢在 MySqlInitializer 类中设置硬编码的数据库名称 - 称为 myDatabaseName 在下面的 sn-p 中:
var migrationHistoryTableExists = ((IObjectContextAdapter)context).ObjectContext.ExecuteStoreQuery<int>(
string.Format(
"SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = '{0}' AND table_name = '__MigrationHistory'",
"myDatabaseName"));
我正在寻找一种从 DbContext 动态获取数据库名称的方法,以便将数据库名称仅存储在连接字符串中,而不是第二次存储在 MySqlInitializer 中。但是我在 DbContext 和 DbContext 的数据库属性中都找不到该名称的任何属性。
【问题讨论】:
标签: c# mysql .net entity-framework .net-core