您正在讨论的错误是因为DatabaseOptions属性是一个布尔值.您需要更改该属性以接受字符串值.安装控制器中有一些地方需要更改该属性的使用方式…
但是,最重要的部分是实现DataServicesProvider.我将我添加到核心,但我认为你可以把它作为一个功能放在设置模块中.我看起来像这样……
namespace Orchard.Data.Providers {
public class MySqlDataServiceProvider : AbstractDataServicesProvider
{
private readonly string _connectionString;
public MySqlDataServiceProvider(string dataFolder, string connectionString)
{
_connectionString = connectionString;
}
public static string ProviderName
{
get { return "MySql"; }
}
public override IPersistenceConfigurer GetPersistenceConfigurer(bool createDatabase)
{
var persistence = MySQLConfiguration.Standard;
if (string.IsNullOrEmpty(_connectionString))
{
throw new ArgumentException("The connection string is empty");
}
persistence = persistence.ConnectionString(_connectionString);
return persistence;
}
}
}
哦,不要忘记你需要引用MySql.Data.它可以作为NuGet包使用.