Я новичок в ASP.NET и только начинаю изучать ASP.NET MVC 3. Я запустил новый проект ASP.NET MVC 3, используя шаблон по умолчанию, в котором уже сконфигурировано большинство элементов членства.,Теперь я пытаюсь понять, что на самом деле происходит за кулисами.
Я обнаружил, что шаблон по умолчанию определяет интерфейс IMembershipService, который реализуется классом AccountMembershipService, который в основном просто оборачивает System.Web.Security.MembershipProvider.Из комментариев в коде звучит, как будто эта абстракция сделана для облегчения модульного тестирования.
По умолчанию MembershipProvider установлен в файле Web.config.Мой проект, который был создан из шаблона по умолчанию, имеет значение SqlMembershipProvider.
<membership>
<providers>
<clear/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
applicationName="/" />
</providers>
</membership>
Это указывает на строку подключения в файле Web.config, который ссылается на базу данных SQL Express «aspnetdb.mdf»..
<connectionStrings>
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" />
</connectionStrings>
Когда я впервые создал свой проект, файла aspnet.mdf не было.Но после запуска моего приложения и регистрации нового пользователя в этом файле автоматически генерировались таблицы и все.Что тут происходит?Что создает этот файл и указывает таблицы, которые должны быть созданы?