【问题标题】:Access to database and connection string访问数据库和连接字符串
【发布时间】:2011-05-27 08:35:24
【问题描述】:

这是我的连接字符串:

 <add name="modelConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename='D:\Documents and Settings\Dima\My Documents\Visual Studio 2010\WebSites\WebSite10\App_Data\ASPNETDB.MDF';Integrated Security=True;User Instance=True;" providerName="System.Data.SqlClient"/>

它停止抛出异常,但对数据库的访问似乎不起作用,因为当我回答确认问题时,它说它是错误的并且不会让我进入!

    <membership defaultProvider="MyMembershipProvider">

  <providers>
    <clear/>
    <add
   name="MyMembershipProvider"    
   type="System.Web.Security.SqlMembershipProvider"      
   connectionStringName="modelConnectionString"             
   minRequiredPasswordLength="1"          
   minRequiredNonalphanumericCharacters="0"
   enablePasswordReset="true"
   maxInvalidPasswordAttempts="1000"
   passwordAttemptWindow="4000"
   enablePasswordRetrieval="true"
   requiresUniqueEmail="false"
   passwordFormat="Encrypted" 
   applicationName="/WebSite10"

   />
  </providers>
</membership>

【问题讨论】:

  • 先检查你正在连接的Sql Server的认证方式,然后告诉我所有细节。
  • 你在 sqlserver 中创建了 aspnet 用户吗?你赋予了什么权限
  • 认证方式是“Forms”.. 可惜我不知道aspnet用户和权限的制作流程。

标签: asp.net sql connection-string


【解决方案1】:

您尚未在连接字符串中指定数据库名称 - 在顶部的连接字符串中您指定了应声明数据库名称的数据库文件。

Server=.\SQLExpress;AttachDbFilename=c:\asd\qwe\mydbfile.mdf;Database=dbname; Trusted_Connection=Yes;

如果要将数据库文件附加到本地 SQL 实例,则需要使用 AttachDbFilename 属性。

【讨论】:

  • 为什么我需要使用 SQLExpress 而不是 localserver.. 默认服务器?.. 好吧,我不附加它。是aspnetdb,由visual studio 2010自动创建
  • 您不需要使用 SQLExpress,这只是一个示例实例名称。您需要指定要附加数据库的服务器实例的位置。
  • 我添加了您的修改。现在它不会抛出异常,它只是说用户名不在数据库中。该实例位于 Visual Studio 的服务器资源管理器中。它是由程序(VS2010)而不是我添加的
  • 好的,数据库连接已经建立,现在您可以继续完成剩下的工作了。这与连接字符串无关,而是与成员资格提供程序有关。研究使用 WAT 来管理会员提供商的用户。
  • 无法打开登录请求的数据库“dbname”。登录失败。用户 'DIMA-00AA1DA557\Dima' 登录失败。 - 这就是我尝试过的。它没有给我我在问题中所说的旧例外。我仍然无法访问数据库。我想知道你在连接字符串中提供了什么或在 Windows 配置中做了什么才能进入数据库
【解决方案2】:

能否不通过 Visual Studio 服务器资源管理器创建连接。您可以使用正确的凭据登录服务器,然后将正确的连接字符串保存到配置文件中。

有一个microsoft knowledge base article!关于这个。

【讨论】:

  • 感谢您的链接。但是你能明白为什么我无法使用上面的连接字符串之一连接到数据库吗?
猜你喜欢
  • 1970-01-01
  • 2011-08-22
  • 1970-01-01
  • 2016-03-24
  • 2016-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多