ASP.NET Web 窗体用户数据 - 未存储在 SQL 中

Posted

技术标签:

【中文标题】ASP.NET Web 窗体用户数据 - 未存储在 SQL 中【英文标题】:ASP.NET Web Form User Data - Not Stored in SQL 【发布时间】:2016-12-22 14:09:28 【问题描述】:

我有一个 ASP.NET Web 窗体应用程序 (.NET 4.5),我的连接字符串设置为连接到我的 Advantage 数据库服务器 (ADS)。我正在尝试将 ASP.NET Web 表单页面中已有的预装表单用于用户帐户,但我有一个问题:我不知道数据存储在哪里。

我知道在正常情况下,这些数据将存储在本地数据库中,该本地数据库设置在 Web.config 中的连接字符串中。但是,正如我所提到的,我没有使用 SQL,我使用的是 ADS。

任何人都知道这些数据存储在哪里,因为它没有创建 localDB .mdf 文件?

【问题讨论】:

您是否尝试查看应用程序中的连接字符串?默认模板使用 ASP.NET 标识。只需查看传递给它的连接字符串,它就会告诉您数据在哪里。 是的,我的 web.config 连接字符串设置为我的 ADS 数据库,但那里没有存储数据。 仅仅因为您的 web.config 中有一个连接字符串并不意味着它被 ASP.NET Identity and Entity Framework 使用。查看上下文的构造函数,看看它使用的是什么连接字符串。 我不知道在哪里可以找到? 在 VS 创建的带有个人用户帐户的 Web 应用程序中,查看 Models/IdentityModels.cs。查看ApplicationDbContext 的构造函数?它将 "DefaultConnection" 作为 web.config 中将使用的连接字符串的名称传递。 【参考方案1】:

感谢梅森,我找到了问题所在。 ApplicationDbContext 的“默认连接”应该已更改以匹配我的 web.config 文件。

我添加了第二个连接字符串(因为我的第一个连接字符串指向我的 ADS 数据库)并将其命名为“UserAccounts”。这与 Visual Studio 在创建 Web 窗体应用程序时默认生成的本地 SQL DB 的默认路径相同。所以现在我将我的用户帐户数据存储在本地。到目前为止,我还没有意识到您可以将多个连接字符串添加到不同的数据库。

【讨论】:

以上是关于ASP.NET Web 窗体用户数据 - 未存储在 SQL 中的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET Web 窗体 - 通过 jquery 填充字段时客户端验证不起作用?

用于用户管理的 ASP.NET Web 表单应用程序中的 Advantage Database Server (10.1)

asp.net如何让未登录用户登录后能自动跳转到登录前访问的页面?

ASP .NET Web 窗体 - 为啥父级不使用数据绑定表达式调用自定义控件的属性设置器?

ASP.NET Web 窗体和 ASP.NET 网页

如何在 ASP.NET Web 窗体环境中使用 DLL?