C# ASP.NET成员资格提供商可以';无法连接到数据库
我想使用ASP.NET成员资格提供程序,因此我运行了C# ASP.NET成员资格提供商可以';无法连接到数据库,c#,asp.net,sql-server,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Sql Server,Asp.net Mvc,Asp.net Mvc 4,我想使用ASP.NET成员资格提供程序,因此我运行了aspnet\u regsql.exe,并创建了我的表。但是,在打开网站管理工具(ASP.net设置)页面后,当我想添加规则时,出现以下错误: 以下消息可能有助于诊断问题: 无法连接到SQL Server数据库。 在System.Web.Administration.WebAdminPage.CallWebAdminHelperMethod(布尔isMembership,String methodName,Object[]参数,Type[]pa
aspnet\u regsql.exe
,并创建了我的表。但是,在打开网站管理工具(ASP.net设置)页面后,当我想添加规则时,出现以下错误:
以下消息可能有助于诊断问题:无法连接到SQL Server数据库。
在System.Web.Administration.WebAdminPage.CallWebAdminHelperMethod(布尔isMembership,String methodName,Object[]参数,Type[]paramTypes)
在c:\Windows\Microsoft.NET\Framework\v4.0.30319\ASP.netweadminifiles\security\users\adduser\aspx.PopulateCheckboxes()中的ASP.security\u adduser\aspx()处:第28行
在c:\Windows\Microsoft.NET\Framework\v4.0.30319\ASP.NETWebAdminFiles\security\users\adduser\adduser.aspx中的ASP.security\U users\U aspx.Page\u Load()处:第22行
在System.Web.Util.CallEventHandlerDelegateProxy.Callback(对象发送方,EventArgs e)>在System.Web.UI.Control.OnLoad(EventArgs e)在System.Web.UI.Control.LoadRecursive()上 在System.Web.UI.Page.ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,布尔includeStagesAfterAsyncPoint) 谷歌搜索后,我发现我的连接字符串可能有问题,因此我的
web.config
中的连接字符串如下所示:
<connectionStrings>
<add name="authentication"
connectionString="Data Source=.;Initial Catalog=EducationDB;User ID=sa; password=###"
providerName="System.Data.SqlClient" />
<add name="EducationDBEntities"
connectionString="metadata=res://*/EducationModel.csdl|res://*/EducationModel.ssdl|res://*/EducationModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.;Initial Catalog=EducationDB;User ID=sa; password=#######;MultipleActiveResultSets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
</connectionStrings>
致以最诚挚的问候-我使用ASP.NET MVC4与公众共享数据库的
sa
密码是不明智的。只是为了确保..您使用的是sql server而不是其他DBMS对的是我使用的是sql server您可能需要更改connectionString中的“数据源”。尝试。\InstanceName作为数据源写入了什么?
<membership>
<providers>
<clear />
<add name="AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="authentication" />
</providers>
</membership>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="authentication"
connectionString="Data Source=.;Initial Catalog=EducationDB;User ID=sa; password=####"
providerName="System.Data.SqlClient" />
<add name="EducationDBEntities"
connectionString="metadata=res://*/EducationModel.csdl|res://*/EducationModel.ssdl|res://*/EducationModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.;Initial Catalog=EducationDB;User ID=sa; password=####;MultipleActiveResultSets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
</connectionStrings>
<appSettings>
<add key="webpages:Version" value="2.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="PreserveLoginUrl" value="true" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
<system.web>
<roleManager enabled="true" />
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>
<pages>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Optimization" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
</namespaces>
</pages>
<membership>
<providers>
<clear />
<add name="AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="authentication" />
</providers>
</membership>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
</system.webServer>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework">
<parameters>
<parameter value="System.Data.SqlServerCe.4.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="System.Data.SqlServerCe.4.0" type="System.Data.Entity.SqlServerCompact.SqlCeProviderServices, EntityFramework.SqlServerCompact" />
</providers>
</entityFramework>
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SqlServerCe.4.0" />
<add name="Microsoft SQL Server Compact Data Provider 4.0" invariant="System.Data.SqlServerCe.4.0" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
</DbProviderFactories>
</system.data>
</configuration>
public class MvcApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
WebSecurity.InitializeDatabaseConnection("authentication", "UserProfile", "UserId", "UserName", autoCreateTables: true);
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
AuthConfig.RegisterAuth();
}
}