首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET WebSite管理工具无法访问WebSite数据库

ASP.NET WebSite管理工具无法访问WebSite数据库
EN

Stack Overflow用户
提问于 2013-09-25 00:15:50
回答 3查看 10.3K关注 0票数 0

在ASP.NET WebSite管理工具中单击“安全性”选项卡时,一直会收到以下错误。

在建立到Server的连接时发生了与网络相关的或特定于实例的错误.找不到或无法访问服务器。验证实例名是否正确,以及Server是否配置为允许远程连接。(提供程序: SQL网络接口,错误: 26 -指定的服务器/实例定位错误)

这正是我迄今为止所做的:

  1. 创建一个新的空网站。
  2. /App_Data中创建名为ASPNETDB.MDF的数据库
  3. 运行命令行:Aspnet_regsql.exe -A all -E -d (mywebsitepath)/App_Data/ASPNETDB.MDF
  4. 转到ASP.NET WebSite管理工具并单击安全选项卡。

我做错了什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-09-26 01:41:08

您需要在网站web.config文件中配置成员资格提供程序。请参见下面的示例,并根据您的要求修改配置。

代码语言:javascript
复制
<configuration>
  <connectionStrings>
    <add name="MySqlConnection" connectionString="Data 
      Source=MySqlServer;Initial Catalog=aspnetdb;Integrated
      Security=SSPI;" />
  </connectionStrings>
  <system.web>
    <authentication mode="Forms" >
      <forms loginUrl="login.aspx"
        name=".ASPXFORMSAUTH" />
    </authentication>
    <authorization>
      <deny users="?" />
    </authorization>
    <membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15">
      <providers>
        <clear />
        <add 
          name="SqlProvider" 
          type="System.Web.Security.SqlMembershipProvider" 
          connectionStringName="MySqlConnection"
          applicationName="MyApplication"
          enablePasswordRetrieval="false"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          requiresUniqueEmail="true"
          passwordFormat="Hashed" />
      </providers>
    </membership>
  </system.web>
</configuration>

有关更多信息,请参阅以下MSDN文章:

http://msdn.microsoft.com/en-us/library/6e9y4s5t(v=vs.100).aspx

http://msdn.microsoft.com/en-us/library/vstudio/1b9hw62f(v=vs.100).aspx

票数 4
EN

Stack Overflow用户

发布于 2016-08-14 08:23:05

如果您使用的是Server而不是localDB,这是@codkemonkeh答案的扩展。

在启用角色之前,我的网站管理工具一直运行得很好,这时我开始收到这个错误。因此,如果没有角色,我的应用程序就可以正常工作,但是在启用了角色之后,我就会得到这个错误。

如果未提供默认连接,则发现默认情况下角色使用localDB sql连接。因为在我的例子中,我将用户登录存储在Server中(而不是在localDB中),所以我得到了这个错误。

此Microsoft帮助页面准确地展示了如何为角色设置默认连接。

代码语言:javascript
复制
<roleManager enabled="true" defaultProvider="SqlRoleManager">
  <providers>
    <add name="SqlRoleManager" 
         type="System.Web.Security.SqlRoleProvider"
         connectionStringName="YOUR_CONNECTION_NAME"
         applicationName="MyApplication" />
  </providers>
</roleManager>

还要注意,defaultProvider="SQLRoleManager“和name="SQLRoleManager”...>应该是相同的。

除此之外,@codemonkeh的答案(上面)是正确的。这只是我遇到的额外问题。

票数 1
EN

Stack Overflow用户

发布于 2017-06-14 06:25:26

在我的HomeController上使用HomeController之后,当我检查@if (“管理员”)时,它解决了我的Problem.that“无法连接到Server数据库”的问题。

链接:新的MVC 4 Internet模板中基于角色的简单身份验证

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18994184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档