Мастер настройки ASP.NET для входа с удаленного сервера SQL - PullRequest
2 голосов
/ 07 апреля 2009

Я изучал ASP.NET, экспериментируя, просматривая видео на ASP.NET и читая форумы. Хотя я не нашел быстрого решения этой проблемы.

Всякий раз, когда я добавляю «login» или «createuserwizard» из набора инструментов, он всегда добавляет новых пользователей в базу данных, известную как «ASPNETDB.MDF», даже если я указываю удаленную базу данных, используя новый SqlDataSource.

Есть ли простой способ сохранить информацию для входа? Какие учебники вам помогли?

Ответы [ 2 ]

2 голосов
/ 08 апреля 2009

По умолчанию ASP.NET будет использовать локальную файловую базу данных для хранения информации для входа.

Если вы хотите использовать другую базу данных, вам нужно сделать пару вещей:

  1. Настройка удаленной базы данных с использованием aspnet_regsql.exe (обычно находится в C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727) - при запуске этого запускается в режиме графического интерфейса, что позволяет выбрать сервер и база данных для добавления таблиц и хранимых процедур.
  2. Настройте свой веб-сайт для использования этой базы данных. Есть несколько мест, где вам нужно сделать это:

В разделе ConnectionStrings файла web.config добавьте новую ConnectionString:

<add 
  name="zhpCoreContentConnectionString"
  connectionString="Data Source=Hobbiton\SqlExpress;Initial Catalog=zhpCoreContent;Integrated Security=True" 
  providerName="System.Data.SqlClient"/>

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

<membership>
  <providers>
    <add 
      connectionStringName="zhpCoreContentConnectionString"
      applicationName="/doodle"
      name="AspNetSqlMembershipProvider"
      type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
  </providers>
</membership>

Если вы используете Роли или Профили , вам нужно убедиться, что они также используют вашу строку соединения для хранения всего вместе, и убедиться, что атрибут applicationName является общим для них. .

1 голос
/ 08 апреля 2009
...