Entity Framework для аутентификации / авторизации - PullRequest
1 голос
/ 18 февраля 2012

Раньше мы просто использовали конфигурацию asp.net по умолчанию для автоматического добавления таблиц и связанных кодов. Затем немного обновите его, чтобы он соответствовал нашим потребностям, например, какой-либо поставщик пользовательских профилей.

Теперь мы используем MVC3 и Entity Framework 4. Кроме того, на этот раз мы используем MySQL в качестве базы данных, поскольку EF4 хорошо взаимодействует со всеми типами баз данных. Тогда у нас есть некоторые проблемы.

  1. Конфигурация asp.net создаст отдельную запись строки подключения в web.config и будет использовать ее. Возможно ли использовать нашу существующую модель EDMX?

  2. Поскольку мы не можем написать хранимую процедуру в базе данных MySQL, есть ли пример кода, который спроектировал тех поставщиков членства / профиля без использования хранимых процедур?

Спасибо.


[Обновление - в ответ на Матье Лебланка]

Мой текущий проект заключается в использовании существующей базы данных MySQL, которая уже содержит информацию о членстве, ролях и профилях. Поэтому мы не должны использовать Aspnet_regsql.exe для создания новых таблиц в базе данных. Как мы можем использовать существующую структуру базы данных для проектирования этих провайдеров?

До сих пор я не думал о хорошем решении. Будем весьма благодарны за любые предложения.

1 Ответ

0 голосов
/ 18 февраля 2012

Вы действительно можете использовать одну базу данных для хранения таблиц аутентификации и вашей обычной базы данных EF4.

Вы можете сгенерировать сценарий, который создает все таблицы аутентификации ASP.Net с помощью инструмента командной строки Aspnet_regsql.exe(подробности здесь: http://msdn.microsoft.com/en-us/library/ms229862.aspx)

Вы также можете изменить свой web.config, чтобы иметь одну строку подключения для указания на вашу единую базу данных, но я предлагаю вам сохранить две строки, каждая из которых имеет свое имя (и назначение), и просто попросите их указать на одну и ту же базу данных.

Это будет выглядеть как

<configuration>
  <connectionStrings>
    <add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS2008;Integrated Security=SSPI;initial catalog=MyDatabase" providerName="System.Data.SqlClient" />
    <add name="MyEntities" connectionString="data source=.\SQLEXPRESS2008;Integrated Security=SSPI;initial catalog=MyDatabase" providerName="System.Data.SqlClient" />
  </connectionStrings>
...

На ваш вопрос о том, как работать с MySQL с базой данных аутентификации ASP.Net, в отношенииХранимый Proc, я понятия не имею, как (и если) это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...