Spiga
Posts - 67, Articles - 0, Comments - 750
Cnblogs
Dashboard
Login
Home
Contact
Gallery
RSS
无心之柳
有意栽花花不开,无心插柳柳成荫
NHibernate 做个小项目来试一下吧 六
2004-10-16 11:33 by 无心之柳.NET, 3632 visits,
收藏
,
编辑
BLL层也完成了,现在来做 界面吧,在添加一个新建ASP.Net Web应用程序的新建工程
现搞个 注册的页吧,
(图片上传上就成这个样子了
)
using
System;
using
System.Collections;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Web;
using
System.Web.SessionState;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.HtmlControls;
using
guestbook.BLL;
using
guestbook.Dal;
using
guestbook.data;
namespace
guestbook.web
{
/**/
///
<summary>
///
Register 的摘要说明。
///
</summary>
public
class
Register : System.Web.UI.Page
{
protected
System.Web.UI.WebControls.TextBox txtUserName;
protected
System.Web.UI.WebControls.TextBox txtEmail;
protected
System.Web.UI.WebControls.Button Button1;
protected
System.Web.UI.WebControls.RegularExpressionValidator RegularExpressionValidator1;
protected
System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator2;
protected
System.Web.UI.WebControls.RequiredFieldValidator valUN;
protected
System.Web.UI.WebControls.TextBox txtPwd;
private
void
Page_Load(
object
sender, System.EventArgs e)
{
//
在此处放置用户代码以初始化页面
}
Web 窗体设计器生成的代码
#region
Web 窗体设计器生成的代码
override
protected
void
OnInit(EventArgs e)
{
//
//
CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base
.OnInit(e);
}
/**/
///
<summary>
///
设计器支持所需的方法 - 不要使用代码编辑器修改
///
此方法的内容。
///
</summary>
private
void
InitializeComponent()
{
this
.Button1.Click
+=
new
System.EventHandler(
this
.Button1_Click);
this
.Load
+=
new
System.EventHandler(
this
.Page_Load);
}
#endregion
private
void
Button1_Click(
object
sender, System.EventArgs e)
{
if
(Page.IsValid)
{
string
username
=
txtUserName.Text;
string
Email
=
txtEmail.Text;
string
pwd
=
txtPwd.Text;
users newUser
=
new
users();
newUser.Name
=
username;
newUser.email
=
Email;
newUser.password
=
pwd;
if
(
!
CreateAccount(newUser))
{
valUN.ErrorMessage
=
"
用户名已被注册,请另选!
"
;
valUN.IsValid
=
false
;
}
}
}
private
bool
CreateAccount(users user)
{
try
{
usersbll bll
=
new
usersbll();
bll.UserAdd(user);
HttpContext.Current.Session[
"
AccountInfo
"
]
=
user;
HttpContext.Current.Response.Redirect(
"
Default.aspx
"
,
true
);
}
catch
{
return
false
;
}
return
true
;
}
}
}
这个过程 总体来说比较顺利,但是在最后测试的时候 碰到了一点点问题 ,就是一开始,怎么也插入不了数据,后来才想起来,没有把NHibernate的配置复制到 web.config中去,晕啊,太粗心了我
还有一个要注意的就是,
<
configSections
>
<
section
name
="nhibernate"
type
= "System.Configuration.NameValueSectionHandler,System,Version=1.0.3300.0,Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
</
configSections
>
上面这一节 一定要 放在 <configSection>标签下在, 放到其它位置 就会报错。OK继续
本
作品
由
平波
创作,采用
知识共享署名 2.5 中国大陆许可协议
进行许可。
绿色通道:
好文要顶
关注我
收藏该文
与我联系
Categories:
NHibernate
Add your comment
6 条回复
663614
#1楼
rotchen[未注册用户]
2004-12-11 17:00
谁能发个Wallop邀请,多谢了!
rotchen07@hotmail.com
回复
引用
#2楼
zengdj[未注册用户]
2006-03-15 11:00
为什么在界面层还要引用DAL层的东西呢:using guestbook.Dal;界面层应该只需知道BLL层就够了吧,不应该跨层调用吧
回复
引用
#3楼
super[未注册用户]
2006-05-07 18:48
能否把源码给我谢谢superghy@sohu.com
回复
引用
#4楼
karlsoft
2006-05-25 11:21
插入不了数据﹐把NHibernate的配置复制到 web.config中去,..........如何解決???????
回复
引用
查看
#5楼
karlsoft
2006-05-25 11:58
使用NHibernate在Web層在按鈕下實現這個﹐不能添加數據﹐請問什么原因﹐是不是配置文件有問題﹐在web.config中已經加了這個
<configSections>
<section name="nhibernate" type="System.Configuration.NameValueSectionHandler, System,Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>
也加了這個
<nhibernate>
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver"/>
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider"/>
<add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect"/>
<add key="hibernate.connection.connection_string" value="server=MIS03;uid=sa;pwd=;"/>
</nhibernate>
我的代碼碼如下﹕
按鈕下實現如下:
Configuration cfg = new Configuration();
cfg.AddAssembly("GuestBook.Data");
ISessionFactory f = cfg.BuildSessionFactory();
ISession s = f.OpenSession();
ITransaction t = s.BeginTransaction();
Users newUser = new Users();
newUser.Name = "papersnake";
newUser.Password = "123456";
newUser.Email = "you@hotmail.com";
newUser.RegTime = DateTime.Now;
s.Save(newUser);
t.Commit();
s.Close();
回复
引用
查看
#6楼
笑疯[未注册用户]
2007-03-04 19:06
为什么在界面层还要引用DAL层的东西呢:using guestbook.Dal;界面层应该只需知道BLL层就够了吧,不应该跨层调用吧
为什么要这样啊???
回复
引用
注册用户登录后才能发表评论,请
登录
或
注册
,
返回博客园首页
。
首页
博问
闪存
新闻
园子
招聘
知识库
最新IT新闻
:
·
Chrome将给老机带来更快的3D绘图性能
·
在线支付创业公司Stripe获红杉资本等1800万美元的投资,公司估值达1亿美元
·
创新工场孵化公司磊友科技今天正式推出首款大型手机HTML5网页游戏《黎明帝国》
·
霍金的伟大与不幸
·
Linux为什么成功?因为它的失败是免费的!
»
更多新闻...
最新知识库文章
:
·
高级编程语言的发展历程
·
如何学习一门新的编程语言?
·
学习不同编程语言的重要性
·
为什么我喜欢富于表达性的编程语言
·
计算机专业的女生为什么要学编程
»
更多知识库文章...
China-pub 2011秋季教材巡展
China-Pub 计算机绝版图书按需印刷服务
About
在 Buzz 上关注
昵称:
无心之柳.NET
园龄:
7年4个月
粉丝:
2
关注:
0
最新评论
Re:再次解决,android 2.3运行凯立德问题
好好学习,天天向上 -- wangxm
Re:NHibernate 做个小项目来试一下吧(总结) 八
竟然还有人问我要代码的,这个东西,04年写的,Nhibernate api什么的肯定改变了很多了,就不要再问我要了,我也找不到这些代码了 -- 无心之柳.NET
Re:NHibernate 做个小项目来试一下吧(总结) 八
还在发吗。给一个学习下。谢谢!
yhmodem@163.com -- yhmodem
Re:NHibernate 做个小项目来试一下吧(总结) 八
代码下载不了,能否给我一份,谢谢
xianhai427@yahoo.com.cn -- OpenEye
Re:好消息,不用替换文件,凯立德能用了
感谢呢,虽然我还没有用,不过这种精神很好呢。
如果可以去掉“测试版非卖品”就更加完美了 -- 雨淡无痕
日历
<
2004年10月
>
日
一
二
三
四
五
六
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
随笔分类
Rss
.Net(19)
Rss
ASP(6)
Rss
Community Server(7)
Rss
NHibernate(14)
Rss
tools(8)
Rss
UML(1)
Rss
随笔(8)
随笔档案
2011年3月(1)
2011年2月(1)
2010年7月(1)
2010年2月(2)
2009年10月(1)
2009年9月(1)
2009年8月(4)
2008年12月(1)
2008年5月(1)
2007年8月(1)
2007年7月(3)
2007年6月(1)
更多...
2007年5月(2)
2007年4月(3)
2007年3月(5)
2007年1月(1)
2006年9月(3)
2006年8月(1)
2006年1月(1)
2005年12月(2)
2005年9月(3)
2005年8月(2)
2005年5月(1)
2005年4月(1)
2005年3月(2)
2004年12月(3)
2004年11月(1)
2004年10月(13)
2004年9月(1)
推荐排行榜
阅读排行榜
好友
surprise
Vo的BLOG
郊外农场
牛初乳哪个牌子好
蜻蜓之二
Rss
天天资讯 - IT中文业务资讯站
阳光锈了
开源站点
log4net
Nhibernate
Nunit