ASP.NET'te yeni ve ASP.NET MVC 3'ü öğrenmeye yeni başlamıştım. Zaten yapılandırılmış olan üyelik öğelerinin çoğuna sahip olan varsayılan şablonu kullanarak yeni bir ASP.NET MVC 3 projesine başladım. Şimdi sahnelerin arkasında gerçekten neler olduğunu anlamaya çalışıyorum.Aspnetdb.mdf ASP.NET MVC Uygulamamda nereden geldi?
Varsayılan şablonun, bir System.Web.Security.MembershipProvider temelini temel alan AccountMembershipService sınıfı tarafından uygulanan bir IMembershipService arabirimini tanımladığını buldum. Koddaki yorumlardan çıkan sesler, bu testin birim testini kolaylaştırmak için yapıldığı gibi.
Varsayılan MembershipProvider, Web.config dosyasında ayarlanır. Varsayılan şablondan oluşturulan projem, SqlMembershipProvider olarak ayarlandı.
<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>
Bu SQL Express veritabanı "aspnetdb.mdf" başvuran Web.config dosyasında, bir bağlantı dizesi başvurur.
<connectionStrings>
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" />
</connectionStrings>
Projemi ilk oluşturduğumda aspnet.mdf dosyası yoktu. Ancak uygulamamı çalıştırdıktan ve yeni bir kullanıcı kaydettikten sonra bu dosya otomatik olarak tablolar ve hepsi oluşturuldu. Burada neler oluyor? Bu dosyayı oluşturan ve oluşturulacak tabloları belirleyen nedir?