Подтвердить что ты не робот

Как настроить ASP.NET MVC 2 с MySQL?

Можно ли настроить ASP.NET MVC 2 для работы с базой данных MySQL?

4b9b3361

Ответ 1

Я предполагаю, что у вас есть Visual Studio Professional 2008, есть доступ к экземпляру сервера MySQL и имеет опыт работы от умеренного до продвинутого. Это МОЖЕТ работать с веб-изданием VS2008, но совсем не уверен.

  • Если вы этого не сделали, установите MySQL Connector для .NET (6.2.2.0 на момент написания этой статьи)
  • Дополнительно: установите Инструменты графического интерфейса MySQL
  • Если вы этого не сделали, установите RTM MVC 2, или еще лучше, используйте Microsoft Установщик веб-платформы. ( ОБНОВЛЕНИЕ: MVC 2 уже выпущен на некоторое время)
  • Создайте пустую базу данных MySQL. Если вы не хотите получать доступ к вашему приложению с учетной записью пользователя root root (небезопасно), создайте учетную запись пользователя и назначьте соответствующие привилегии (вне области этой записи).
  • Создайте новое приложение MVC 2 в Visual Studio
  • В приложении MVC 2 обратитесь к MySql.Web.dll. Он будет либо в вашем GAC, либо в папке, которую установил установщик MySQL Connector.
  • Измените часть строки подключения вашего web.config:

      <connectionStrings> 
        <remove name="LocalMySqlServer"/> 
        <add name="MySqlMembershipConnection"
             connectionString="Data Source=[MySql server host name];
                               userid=[user];
                               password=[password];
                               database=[database name];" 
             providerName="MySql.Data.MySqlClient"/>
      </connectionStrings>
    

    8.

    Измените членскую часть вашего web.config:

      <membership defaultProvider="MySqlMembershipProvider"> 
        <providers>  
          <clear/>  
          <add name="MySqlMembershipProvider"  
               type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, 
                     Version=6.2.2.0, Culture=neutral, 
                     PublicKeyToken=c5687fc88969c44d"  
               connectionStringName="MySqlMembershipConnection"  
               enablePasswordRetrieval="false"  
               enablePasswordReset="true"  
               requiresQuestionAndAnswer="false"  
               requiresUniqueEmail="true"  
               passwordFormat="Hashed"  
               maxInvalidPasswordAttempts="5"  
               minRequiredPasswordLength="6"  
               minRequiredNonalphanumericCharacters="0"  
               passwordAttemptWindow="10"  
               applicationName="/"  
               autogenerateschema="true"/>  
          </providers>  
        </membership>  
    

    9.

    Измените часть роли менеджера вашего web.config:

      <roleManager enabled="true" defaultProvider="MySqlRoleProvider">  
        <providers>  
          <clear />  
          <add connectionStringName="MySqlMembershipConnection"  
               applicationName="/"  
               name="MySqlRoleProvider"  
               type="MySql.Web.Security.MySQLRoleProvider, MySql.Web, 
                     Version=6.2.2.0, Culture=neutral, 
                     PublicKeyToken=c5687fc88969c44d"  
               autogenerateschema="true"/>  
        </providers>  
      </roleManager>
    

    10.

    Измените часть профиля вашего web.config:

      <profile>  
        <providers>  
          <clear/>  
          <add type="MySql.Web.Security.MySQLProfileProvider, MySql.Web, 
                     Version=6.2.2.0, Culture=neutral, 
                     PublicKeyToken=c5687fc88969c44d"  
               name="MySqlProfileProvider"  
               applicationName="/"  
               connectionStringName="MySqlMembershipConnection"  
               autogenerateschema="true"/>  
        </providers>  
      </profile>
    

На этом этапе вы должны запустить приложение и создать домашнюю страницу ASP.NET MVC 2 в своем браузере. Однако лучше сначала запустить Средство настройки веб-страницы ASP.NET(в верхних меню Visual Studio: Project → Конфигурация ASP.NET). После запуска инструмента проверьте каждую вкладку; нет ошибок = все хорошо.

Инструмент настройки в

Значок открытого ключа на MySql.web.dll, который я опубликовал здесь, не должен скоро меняться. Но если вы подозреваете, что плохая строка токена от копирования и вставки или что-то еще, просто используйте командную строку Visual Studio для запуска: "sn -T [Path\to\your.dll]", чтобы получить правильный токен открытого ключа.

Там у вас это, ASP.NET MVC 2 работает над MySQL. Ура!

Ответ 2

Я верю в "10. Измените часть профиля вашего web.config::"

<profile>
  <providers>         
    <clear />   ...
      <add type="MySql.Web.Security.MySQLProfileProvider,......

type = должен быть:          тип = "MySql.Web.Profile.MySQLProfileProvider"

потому что в "MySql.Web.Security" я не нашел никакого метода MySQLProfileProvider. (но используя версию 6.4.4 для .NET 4.0)

И, по крайней мере, вам нужно создать свои собственные классы для создания таблиц базы данных, если нет готовой настроенной базы данных. Harald