0

ASP.NET 新手。

在 Visual Studio 2010 Ultimate 中,我创建了一个新的 ASP.Net 3.5 网站,然后使用拖放到页面上的工具箱控件添加表单身份验证。在我的测试环境中使用这些控件创建新用户后,在项目的 App_Data 文件夹中创建了一个名为 ASPNETDB.MDF 的数据库。

我还通过向它添加表来修改这个数据库,我使用连接字符串从网站上的 Web 表单中以代码访问这些表:

Data Source=.\SQLEXPRESS;AttachDbFilename=C|DataDirectory|\ASPNETDB.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True

现在我准备将网站放在我的虚拟主机 1and1.com 上。我在 1and1 控制面板中创建了一个数据库。1and1 帮助页面说使用如下连接字符串连接到 1and1 托管的 SQL Server 数据库:

server=mydbHostName.db.1and1.com; initial catalog=mydbName;uid=mydbUser;pwd=mydbPassword

我已经测试了这个连接并且可以使用这个连接字符串创建和访问表。

我的问题是如何告诉表单身份验证在 1and1 服务器上使用这个新数据库?

4

2 回答 2

1

这一切都在您的 web.config 文件中。您应该会看到如下所示的内容:

<membership defaultProvider="DefaultMembershipProvider">
      <providers>
        <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" <snip> applicationName="/" />
      </providers>
    </membership>

connectionStringName 指向 ConnectionStrings 部分中定义的连接字符串 - 只需确保更改 Membership Provider 中的属性以匹配您用于连接字符串的名称(反之亦然)。

于 2013-02-28T20:38:20.817 回答
0

好吧,这确实是一个不同的问题,但无论如何 - 您可以通过 SSMS 使用 BACKUP 命令创建数据库备份,或者通过右键单击 SSMS 中的数据库并从任务菜单中选择备份 - 这将创建您的 .bak 文件您可以使用 FTP 上传到 1and1。然后进入他们的 SQL 管理器,或使用 SSMS 连接到您的 SQL Server 实例(我不是 1and1 用户,但大多数主机允许您使用托管帐户中的 SQL Server 凭据进行连接),并从 .bak 恢复数据库文件。如果不检查您的脚本和 1and1 SQL Server 配置,我无法告诉您为什么您有排序规则错误 - 可能是 SQLExpress(这是 ASP.Net 配置文件管理的默认设置)和正在运行的任何版本的 SQL Server 1and1 之间的差异. 在任何情况下,如果不通过其基于 Web 的工具,您可能没有在 1and1 服务器上创建数据库的权限。将数据库连接到 1and1 服务器后,您的应用程序应使用它们提供的连接字符串进行连接 - 只需确保服务器位置和数据库名称正确。

于 2013-03-01T00:53:12.427 回答