2012-01-02 3 views
6

Я пытаюсь изменить модуль Orchard.Setup, поэтому я могу установить Orchard CMS 1.3.10 с MySQL как datase.Как использовать базу данных MySQL с Orchard CMS 1.3.10?

Я пришел так долго, что я получаю MySQL в GUI для настройки и когда я нажимаю кнопку настройки я получаю сообщение об ошибке из сада:

The value 'MySql' is not valid for DatabaseOptions. 

Но я не могу найти, как я добавление MySql, как DatabaseOptions, заставить кого-нибудь еще работать с MySQL?

Старый модуль для MySQL несовместим с последней версией Orchard CMS, почему он звонит, чтобы сделать это самостоятельно, если я его заработаю, я собираюсь выпустить его с открытым исходным кодом для других пользователей.

ответ

4

Ошибка, о которой вы говорите, потому что свойство 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.

+0

Спасибо, но я пропустил, чтобы сообщить здесь, что я получил эту часть для работы, но теперь у меня другая проблема, посмотрите на URL-адрес, если знаете что-нибудь: http://orchard.codeplex.com/discussions/284811 – RickardP

Смежные вопросы