与nhibernate和asp.net的有状态会话
假设我有一个客户,他正在从网站上填写数据。使用的底层持久性是Nhibernate 现在一系列的事件都是这样的与nhibernate和asp.net的有状态会话,nhibernate,session-state,Nhibernate,Session State,假设我有一个客户,他正在从网站上填写数据。使用的底层持久性是Nhibernate 现在一系列的事件都是这样的 用户填写表单 他提交了表格 创建nhibernate sessionfactory,并通过客户对象将其保存到数据库中 数据库使用nhibernate的本机生成器提交会话对象 但是,在服务器的响应到达客户端之前,就会发生意外。与客户端的连接断开 客户端将看到页面未找到错误或请求超时错误。他进退两难,还没有注册 于是他再次按下刷新按钮。并且相同的数据集(尽管已提交到数据库)已发送到服务器进行
因此,例如,如果您的用户通过电子邮件地址键入,则在页面加载事件中执行以下步骤:第四点,您可以给出一个虚拟示例代码吗?我实际上理解了这个概念,但还没有实现,我没有使用任何MVC,而是使用普通的asp.net 3.5,所以如果你能提供一个虚拟代码,那么如何使用控制器方法呢。这将非常有帮助:(对不起,请帮忙。但无法真正了解如何实现,不需要控制器-编辑为高级方法-例如在Page_Load内。因此Page_Load应打开事务,检查数据库以查看用户是否已注册,如果未注册,则保存新的用户详细信息,然后提交事务和响应。重定向到Page in表示注册成功。你的意思是我应该实现ihttpModule,然后在其中使用某种context.beginrequest事件来完成任务..然后检查会话是否已经存在..它将仅使用该会话进行更新,否则它会说用户已经存在..之后,当它的context.endrequest事件这就是你想说的吗?我搜索并找到了这个链接,它指向你所说的b类情况。