【问题标题】:Store a session objects values into a database?将会话对象值存储到数据库中?
【发布时间】:2012-10-18 22:36:16
【问题描述】:

我正在创建一个网站。它有一个数据库,我正在尝试使用 Member 表。

在页面上,我要求用户填写一些基本信息成为会员,一旦点击提交按钮,我将这些信息存储到一个会话对象中(有MemberIDLastName,@987654325 @,等等)我想知道如何将这个会话对象中的所有信息存储到数据库中的Member 表中? (表已经创建好了)

另外,我想知道现有会员何时登录。我如何从数据库中获取信息并显示在网页上(以防会员想要编辑他的个人资料)。

我正在使用 Visual Studio 2010,使用 aspx、C# 和 SQL 数据库进行编码。

-- 编辑 2012 年 6 月 17 日晚上 8:13 -----

当我第一次解释我的问题时,我可能不清楚。

我在 .cs 文件中有一个 Member 类,其中包含上述变量状态。我为新成员创建了一个新条目(在网页上),然后将对象存储在会话中。

【问题讨论】:

  • 您可能会发现这个 ASP.Net 的内置功能很有用 - 会员:msdn.microsoft.com/en-us/library/yh26yfzy.aspx
  • @dash 谢谢!但这是一个关于网络和数据库编程的项目,教授希望我们从底层开始构建,这就是为什么我创建了自己的数据库并尽量不要使用 Visual Studio 的太多内置功能@.@我现在的问题是将这个会话扔到数据库并将其存储为 0.0" 无论如何感谢链接:)
  • 不存在 SQL 数据库——SQL 只是 结构化查询语言——一种被许多数据库系统使用的语言,但是SQL 不是数据库产品...

标签: c# asp.net sql-server session


【解决方案1】:

根据您所说,我个人认为不需要使用 ASP.Net 会话状态。

我假设您已经有一个按钮单击处理程序来将提交表单的控件值分配给您的Member 对象,然后您将Member 分配给会话。但相反,这是您希望将 Member 存储到数据库而不是同时存储到会话的点。

因此,将类实例传递给将使用 ADO.Net 的方法。在该方法中创建一个 SqlConnection 对象和一个 SqlCommand 对象。还有更通用的版本,但我假设您使用的是 sql server。向您的 SqlCommand 对象添加应该是更新 SQL 语句和参数的命令文本。最后执行命令存入数据库。

浏览这个介绍网站应该可以解释更详细的信息。 http://www.csharp-station.com/Tutorial/AdoDotNet/lesson01

读回用户信息是类似的,只是你开始使用 SqlDataReader。那篇文章会再次提供帮助。

当然,有一种叫做 Entity Framework Code First 的东西,它消除了你的代码和数据库之间的所有管道。

【讨论】:

    【解决方案2】:

    考虑创建一个数据访问层并使用它来将数据持久化到数据库中。

    【讨论】:

    • 我该怎么做?我在 MemberProfile.aspx 页面中有这个,所以它存储在会话中。我不知道如何将其存储到数据库中。 (Member对象有很多变量如MemberID, FirstName...) //将Member对象存放在会话中 Session["member"] = m;我有一个用于 SQL 数据库的 .mdf 文件,表名为 Member。
    猜你喜欢
    • 1970-01-01
    • 2021-10-11
    • 2020-06-24
    • 1970-01-01
    • 2021-05-28
    • 1970-01-01
    • 2013-02-05
    • 2020-09-11
    • 1970-01-01
    相关资源
    最近更新 更多