第一篇:ASPNET介绍
ASPNET介绍
ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。
ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。
微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。
ASP.net的新性能
ASP.ne提供了稳定的性能、优秀的升级性、更快速的开发、更简便的管理、全新的语言以及网络服务。贯穿整个ASP.net的主题就是系统帮用户做了大部分不重要的琐碎的工作。
全新的构造
新的ASP.net引入受管代码(ManagedCode)这样一个全新概念,横贯整个视窗开发平台。受管代码在NGWSRuntime下运行,而NGWSRuntime是一个时间运行环境,它管理代码的执行,使程序设计更为简便。
高效率
对于一个程序,速度是一件非常令人渴望的东西。一旦代码开始工作,接下来你就得尽可能地让它运作得快些快些再快些。在ASP中你只有尽可能精简你的代码,以至于不得不将它们移植到一个仅有很少一点性能的部件中。而现在,ASP.net会妥善地解决这一问题。
易控制
在ASP.net里,你将会拥有一个“Data-Bounds”(数据约束),这意味着它会与数据源连接,并会自动装入数据,使控制工作简单易行。
语言支持
ASP.net支持多种语言,支持编译类语言,支持比如VB、VC++、C#等,它比这些编译类语言运行速度快,更适合编写大型应用。
更好的升级能力
快速发展的分布式应用也需要更快速、更模块化、更易操作、更多平台支持和重复利用性更强的开发,需要一种新的技术来适应不同的系统,网络应用和网站需要提供一种更加强大的可升级的服务。ASP.net能够适应上面的要求。让你的生活更简单
对于今天的Web程序员来说,最大的挑战就是不断变化的浏览器兼容性以及它们不断升级的复杂性。在保证页面能在所有浏览器下工作的同时,又得尽量使用每个浏览器的最新属性来建立更具交互性的页面,这简直就是一场恶梦。更加可怕的是,需要对不同的用户设备建立不同的网页。
最简单的解决办法就是动态地对不同的用户生成不同的输出,或者就是对不同的用户写多个页面。大多数开发者都会选择第一种方法。但是,这就意味着用户的每次点击都会让服务器判断应该向用户显示什么。而通过ASP.net,我们可以看到一个新的服务控制的概念,它封装了一些普通的任务,提供了一种清晰的编程模块,有助于管理和处理不同的用户类型。
简单地说,ASP.net把这些过程自动化了。
第二篇:aspnet总结
学习ASP.NET,我是从VFP、ASP转型而来的。
我学习的ASP.NET,走的是asp.net(c#)+Sql2005这条路。
之前学习VFP时,就对数据库是了深刻的了解,对CS结构的项目有了大概的认识与体验。如今学习ASP.NET,速度要比他人快得多,至少更容易上手。
关于这方面的学习,我的重点放在BS结构的网站项目上,我不太喜欢CS结构的程序;因为我觉得,CS结构的程序,要想让别人看到,除非别人知道并拥有您的软件,或者购买您的CS程序,否则,没有人会知道您的程序的。
但是,BS结构的网站程序,就不同了,您可以将您的网站发布到互联网上,这样,就可以让很多的陌生的不知名的可遇不可求的网友来访问您的网站,从而,他们就会知道您的网站程序,这更能充分体现出一个程序的价值所在。
这两者的区别就在于,CS结构的程序,必须安装到任何一个客户端才能使用;而BS结构的程序,只需要配置好服务器,连网的计算机,在随时随地都能打开您的网站;这不仅省去了安装的麻烦,同时更有效的解决了时间和空间的限制、打破资源的局限性,让网站程序的价值得以充分体现出来。
之前我学习ASP,是通过dw学习的,当时,就觉得非常麻烦,尤其是html标签文件与ASP代码,是同放在一个文件里面的,这就产生了大量的冗余的代码,修改的时候觉得非常麻烦,即不容易维护、更不容易修改。看上去,眼睛都花了。
还好,转向ASP.NET的学习,正符合自己的个性思维,在学习的过程中,如鱼得水,仅需要学习一下基本的操作和语法,其它基本没有障碍。
学习了ASP.NET的代码分离模式与无刷新技术,认识到了网站的真正的结构,最终才对BS结构的网站程序有了进一步的认识。
同时,对SQL大型数据库的认识才有了质的改变。
第三篇:ASPNET留言板
一、留言板的简介(一)留言板
留言板是一种电子便签管理系统,是用 ASP 或其它脚本语言编写的网络应用程序。在网络用户交流中起很大的作用, 每个人都可以将他的资料和要求等信息保留在页面上,以供他人观看。留言板供其他网友给自己留言,或者临时存放自己的感受。留言操作相对简单, 在您进入网站后, 进入任何一个留言板货社区均可以看到有输入框,输入后提交即可。留言板提供完备的信息发布功能,在网络用户交流中也有很大的作用。而这个留言板仅仅是简单的留言和管理员对留言板进行设置和进行回复、删除管理的工具。该留言板简单但实用, 而且具备了大多数留言板的基本功能。
二、需求分析(一)需求分析
要求系统具有良好的人机界面, 能够满足用户的留言要求, 能够让访客在查看留言内容后,对留言的内容发表自己的意见,管理员能够实现对留言的回复及删除操作, 网站最大限度地实现维护和易操作性,网站运行稳定、安全可靠。(二)设计目标
界面设计美观友好,使用灵活便捷,数据存储安全可靠,提供留言查看、留言发表、留言回复、留言删除功能,系统最大限度地实现易维护和易操作性。(三)功能分析
可以按照发言时间的先后顺序,留言板自动排序,友好简洁的管理界面,便于管理员维护留言板,管理员具有回复和删除留言的权限,具有页数跳转功能系统功能模块图,三、系统功能设计
在编写留言系统前,首先需要确定留言系统所需要的一些功能模块和适用场景,例如留言系统是以何种形式呈现给用户, 如何对这些留言进行管理等等,这些功能都是需要在开发初级进行设计和规划的。后台主页,后台主页面, 后台管理,后台留言信息管理,后台会员。前台主页,留言系统网站登陆界面,主页,留言动态。登陆界面主要有,注册、登陆、看帖、发帖。(一)主要功能 ,、留言网站用户登陆界面功能
当用户访问 W eb 页面时需要进行登录进入留言板网站界面,用户不进行登录就不能够进入系统,也不能够分享相应的信息。管理员可以配置是否需要进行登录才能查看留言板网站的内容, 如果管理员设置需要登录查看,则用户不登陆就不能够查看相应的内容。
2、用户主页功能
用户登录之后就可以看到留言板系统的内容。
3、用户注册功能
访客需要注册账户后才能够看帖,发帖。
4、用户看帖功能
用户登录留言板网站后,就可以查看到网站内的留言贴。
5、用户发帖功能
用户登录留言板网站后,就可以根据其它留言贴而发帖。
6、管理员登录功能
为了方便管理留言板系统,管理员进行对留言板管理。
7、回复功能
用户对留言进行回复(二)数据库设计 ASP.NET 留言板系统在数据库上并不是很困难, 但是也不会简单,其中包含了很多的功能, 这些功能能够让用户在网站上分享自己的见解、意见、聊天等,所以在数据库的设计上, 其表的数量和表与表之间的关系也原有的模块或系统更加复杂。
1、数据表的创建
创建表可以通过 SQL Server 进行创建
2、事务表 Admin Member Info
3、公告数据
公告数据可以不使用数据库进行存储,在这里可以使用 txt 文档进行数据存储, 这样不仅可以减轻数据库服务器的压力, 也能够增加公告中文本的可扩展性。注意,对于公告的数据直接存储在 txt 文档中,当首页需要调用公告时,可以直接从 txt 文档中读取数据进行 HTML 呈现。
(四)设计技术
1、ASP Microsoft Active Server Pages 即我们所称的 ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具, 它起一种编程语言的作用,可以利用它编写动态产生 HTML 的程序代码。而且 ASP 也是服务器端脚本环境,可以用来创建交互式 WEB 页并建立强大的的 Web 应用程序。因此,只要用户浏览 Web 站点并请求一个 ASP 页,Web 服务器就可以处理相应的 ASP 代码,生成 HTML 代码,然后将它传递到用户浏览器并显示出网页。ASP 内含于 IIS4.0 和 5.0 之中,通过 ASP 我们可以结合 HTML 网页、ASP 指令和 ActiveX 元件建立动态、交互且高效的 WEB服务器应用程序。有了 ASP 就不必担心客户的浏览器是否能运行所编写的代码, 因为所有的程序都将在服务器端执行, 包括所有嵌在普通HTML 中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器, 这样也就减轻了客户端浏览器的负担, 大大提高了交互的速度。
2、SQL SQL 全称是“结构化查询语言(Structured Query Language)” ,最早的是 IBM 的圣约瑟研究实验室为其关系数据库管理系统 SYSTEM R开发的一种查询语言,它的前身是 SQUARE 语言。SQL 语言结构简洁,功能强大,简单易学,所以自从 IBM 公司 1981 年推出以来,SQL 语言,得到了广泛的应用。如今无论是像 Oracle ,Sybase, SQL Server这些大型的数据库管理系统,还是像 Visual Foxporo, PowerBuilder这些微机上常用的数据库开发系统,都支持 SQL 语言作为查询语言。
3、IIS IIS 是 Internet Information Server 的缩写,它是微软公司主推的服务器,最新的版本是 Windows2003 里面包含的 IIS 6,IIS 与WindowNT Server 完全集成在一起,因而用户能够利用 Windows NTServer 和 NTFS,NT File SystemNT 的文件系统,内置的安全特性,建立强大,灵活而安全的 Internet 和 Intranet 站点。IIS 支持 HTTP,Hypertext Transfer Protocol,超文本传输协议, ,FTP,Fele Transfer Protocol,文件传输协议,以及 SMTP 协议,通过使用 CGI 和 ISAPI,IIS 可以得到高度的扩展。
四、系统界面和代码实现
1、用户登录界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
L o g i n
:
S y s t e m.W e b.U I.P a g e { p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p r o t e c t e d
v o i d
B t n L o g i n _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T x t N a m e.T e x t
= =
“ ”
|
T x t P a s s.T e x t
= =
“ ”)
{ L a b e l 1.T e x t
=
“ 必须输入帐号和密码,”;r e t u r n;
} e l s e
{ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);c o n n.O p e n();S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();
C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用户名]
f r o m
[ m e m b e r ]
w h e r e
[ 用户名] = ' ”
+
T x t N a m e.T e x t +
“ '
a n d
[ 密码] = ' ”
+
T x t P a s s.T e x t
+
“ ' ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();i f
(d r.R e a d()){ S e s s i o n [ “ m e m ” ]
=
T x t N a m e.T e x t;
/ / 登录成功后记下该用户昵称,以便后续功能使用
L a b e l 1.T e x t
=
“ 登录成功,”;T x t N a m e.T e x t
=
“ ”;T x t N a m e.E n a b l e d
=
f a l s e;T x t P a s s.T e x t
=
“ ”;T x t P a s s.E n a b l e d
=
f a l s e;d r.C l o s e();
} e l s e {
L a b e l 1.T e x t
=
“ 昵称不存在或密码不对,”;
} c o n n.C l o s e();
}
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} }
2、用户注册界面, 代码如下,u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
_ D e f a u l t
:
S y s t e m.W e b.U I.P a g e
{
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p u b l i c
b o o l
C h e c k I n p u t(){
i f
(T x t N a m e.T e x t
= =
“ ”
|
T x t P a s s.T e x t
= =
“ ”
| T x t P a s s C o n f.T e x t
= =
“ ”
|
T x t E m a i l.T e x t
= =
“ ”){ L a b e l 1.T e x t
=
“ 你输入的信息不正确,请重新输入,”;T x t N a m e.T e x t
=
“ ”;T x t P a s s.T e x t
=
“ ”;T x t P a s s C o n f.T e x t
=
“ ”;T x t E m a i l.T e x t
=
“ ”;r e t u r n
f a l s e;
} e l s e {
i f
(T x t P a s s.T e x t
!=
T x t P a s s C o n f.T e x t){
L a b e l 1.T e x t
=
“ 你两次输入的密码不同,请重新输入,”;T x t N a m e.T e x t
=
“ ”;T x t P a s s.T e x t
=
“ ”;T x t P a s s C o n f.T e x t
=
“ ”;T x t E m a i l.T e x t
=
“ ”;r e t u r n
f a l s e;
}
} r e t u r n
t r u e;
} p r o t e c t e d
v o i d
B t n R e g _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){ i f
(C h e c k I n p u t()){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);c o n n.O p e n();/ / 检查用户是否已存在
S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用户名]
f r o m
m e m b e r ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();w h i l e
(d r.R e a d()){ i f
(d r.G e t S t r i n g(0)
= =
T x t N a m e.T e x t){
L a b e l 1.T e x t
=
T x t N a m e.T e x t
+
“ 已经存在,请你选择另外的昵称,”;c o n n.C l o s e();r e t u r n;
}
} c o n n.C l o s e();s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
m e m b e r([ 用户名] , [ 密码] , [ 电子邮件])
v a l u e s(' ”
+
T x t N a m e.T e x t +
“ ' , ' ”
+
T x t P a s s.T e x t
+
“ ' , ' ”
+
T x t E m a i l.T e x t
+
“ ')”;C m d.C o m m a n d T e x t
=
S q l S t r;c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L a b e l 1.T e x t
=
“ 恭喜你,你已注册成功,”;}
}
p r o t e c t e d
v o i d
B t n C a n c e l _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.W r i t e(“ < s c r i p t
l a n g u a g e = j a v a s c r i p t > a l e r t(' 用户已取消注册,');< / s c r i p t > ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} } 3、看帖界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l D a t a A d a p t e r
a d a p t e r
=
n e w
S q l D a t a A d a p t e r(“ s e l e c t
*
f r o m
[ I n f o ] ” ,c o n n);D a t a S e t
d s
=
n e w
D a t a S e t();a d a p t e r.F i l l(d s ,“ I n f o T a b l e ”);G r i d V i e w 1.D a t a S o u r c e
=
d s.T a b l e s [ 0 ].D e f a u l t V i e w;G r i d V i e w 1.D a t a B i n d();} p r o t e c t e d
v o i d
G r i d V i e w 1 _ P a g e I n d e x C h a n g i n g(o b j e c t
s e n d e r ,G r i d V i e w P a g e E v e n t A r g s
e){
G r i d V i e w 1.P a g e I n d e x
=
e.N e w P a g e I n d e x;G r i d V i e w 1.D a t a B i n d();} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){ R e s p o n s e.R e d i r e c t
(“ L o g i n.a s p x ”);} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} }
4、发帖界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S e n d
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
} p r o t e c t e d
v o i d
B t n S e n d _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
L b l C a u t i o n.T e x t
=
“ 你必须输入主题和内容,”;R e t u r n;
} S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
i n f o(主题, 张贴者昵称, 内容, 张贴时间, 回复编号)
”;S q l S t r
=
S q l S t r
+
“
v a l u e s(' ”
+
T x t S u b j e c t.T e x t
+
“ ' , ' ”
+
S e s s i o n [ “ m e m ” ]
+
“ ' , ' ”
+ T x t C o n t e n t.T e x t;S q l S t r
=
S q l S t r
+
“ ' , ' ”
+
D a t e T i m e.N o w
+
“ ' , ' 0 ')”;S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(S q l S t r ,c o n n);c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L b l C a u t i o n.T e x t
=
“ 已成功发帖,”;T x t S u b j e c t.T e x t
=
“ ”;T x t C o n t e n t.T e x t
=
“ ”;
} p r o t e c t e d
v o i d
M e n u 1 _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} } 5、管理员登录界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
g u a n l i
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T e x t B o x 1.T e x t
= =
“ ”
|
T e x t B o x 2.T e x t
= =
“ ”){
L a b e l 1.T e x t
=
“ 必须输入帐号和密码,”;r e t u r n;
} e l s e { S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);c o n n.O p e n();
S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用户名]
f r o m
[ a d m i n ]
w h e r e
[ 用户名] = ' ”
+
T e x t B o x 1.T e x t +
“ '
a n d
[ 密码] = ' ”
+
T e x t B o x 2.T e x t
+
“ ' ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();i f
(d r.R e a d()){
S e s s i o n [ “ m e m ” ]
=
T e x t B o x 1.T e x t;
/ / 登录成功后记下该用户昵称,以便后续功能使用
L a b e l 1.T e x t
=
“ 登录成功,”;T e x t B o x 1.T e x t
=
“ ”;T e x t B o x 1.E n a b l e d
=
f a l s e;T e x t B o x 2.T e x t
=
“ ”;T e x t B o x 2.E n a b l e d
=
f a l s e;d r.C l o s e();R e s p o n s e.R e d i r e c t(“ S h o w A r t i c l e.a s p x ”);}
e l s e {
L a b e l 1.T e x t
=
“ 昵称不存在或密码不对,”;
} c o n n.C l o s e();
}
} p r o t e c t e d
v o i d
B u t t o n 2 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.W r i t e(“ < s c r i p t
l a n g u a g e = j a v a s c r i p t > a l e r t(' 用户已取消注册,');< / s c r i p t > ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} p r o t e c t e d
v o i d
B u t t o n 3 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ L o g i n.a s p x ”);} }
6、显示发帖信息界面, 代码如下,u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w A l l
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(“ s e l e c t
*
f r o m
[ I n f o ]
w h e r e
I D = ”
+ R e q u e s t.Q u e r y S t r i n g [ “ i d ” ] ,c o n n);c o n n.O p e n();S q l D a t a R e a d e r
o b j = C m d.E x e c u t e R e a d e r();w h i l e
(o b j.R e a d()){
L b l N a m e.T e x t
=
o b j.G e t V a l u e(2).T o S t r i n g();L b l D a t e.T e x t
=
o b j.G e t V a l u e(4).T o S t r i n g();T x t S u b j e c t.T e x t
=
o b j.G e t V a l u e(1).T o S t r i n g();T x t C o n t e n t.T e x t
=
o b j.G e t V a l u e(3).T o S t r i n g();
} o b j.C l o s e();c o n n.C l o s e();s t r i n g
s q l
=
“ S e l e c t
*
F r o m
[ i n f o ]
w h e r e
回复编号= ' ”
+
R e q u e s t.Q u e r y S t r i n g [ “ i d ” ]
+
“ ' ”;S q l D a t a A d a p t e r
a d a p t e r
=
n e w
S q l D a t a A d a p t e r(s q l ,c o n n);D a t a S e t
d s
=
n e w
D a t a S e t();a d a p t e r.F i l l(d s ,“ R e p l y ”);D a t a L i s t 1.D a t a S o u r c e
=
d s.T a b l e s [ 0 ].D e f a u l t V i e w;D a t a L i s t 1.D a t a B i n d();
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} }
7、回复界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w A r t i c l e
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
s t r i n g
s t r
=
“ 1 2 3 4 ”;S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(“ s e l e c t
*
f r o m
[ i n f o ]
w h e r e
[ 主题] = ”
+
s t r ,c o n n);c o n n.O p e n();S q l D a t a R e a d e r
o b j
=
C m d.E x e c u t e R e a d e r();w h i l e
(o b j.R e a d()){
L b l N a m e.T e x t
=
o b j.G e t V a l u e(2).T o S t r i n g();L b l D a t e.T e x t
=
o b j.G e t V a l u e(4).T o S t r i n g();T x t S u b j e c t.T e x t
=
o b j.G e t V a l u e(1).T o S t r i n g();T x t C o n t e n t.T e x t
=
o b j.G e t V a l u e(3).T o S t r i n g();}
c o n n.C l o s e();} p r o t e c t e d
v o i d
B t n R e p l y _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T x t R e.T e x t
= =
“ ”){
L b l C a u t i o n.T e x t
=
“ 请输入回帖内容,”;
} e l s e {
s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
i n f o([ 主题] , [ 张贴者昵称] , [ 内容] , [ 张贴时间] , [ 回复编号])
”;S q l S t r
=
S q l S t r
+
“
v a l u e s(' R e : ”
+
T x t S u b j e c t.T e x t +
“ ' , ' ”
+
S e s s i o n [ “ m e m ” ]
+ “ ' , ' ”
+
T x t R e.T e x t;S q l S t r
=
S q l S t r
+
“ ' , ' ”
+
D a t e T i m e.N o w
+
“ ' , ' ”
+
R e q u e s t.Q u e r y S t r i n g [ “ I D ” ]
+
“ ')”;S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(S q l S t r ,c o n n);c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L b l C a u t i o n.T e x t
=
“ 已成功回帖,”;} } p r o t e c t e d
v o i d
B t n A l l R e _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ S h o w A l l.a s p x ? i d = ”
+
R e q u e s t.Q u e r y S t r i n g [ “ i d ” ]);} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ L o g i n.a s p x ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} }
8、Menu 控件,五、总结
上述就是我们组留言板管理系统的全部设计和开发过程。通过这次实训设计, 使我们感到高科技、新知识的力量, 让我们知道我们还有很多知识需要学习,这是我们第一次运用 ASP.NET 做的完整的设计程序, 加之水平有限, 设计中难免有不当之处, 还请老师给予批评、指正。
第四篇:aspnet软件开发学习总结
asp.net学习经验总结
通过几个月的学习,我初步掌握ASP.NET开发平台的基本知识,也通过老师的教学,完成了实际项目中的应用。由于大学学习中打下了较为扎实的C#基础,所以在选择开发平台学习时选择了ASP.NET开发平台。ASP.NET是基于网络的交互开发平台,可以通过微软的C#语言以及Visual Studio 2010开发环境进行开发。
在学习ASP.NET之前,对网络交互的开发平台是非常陌生的。并不知道如何才能实现网站的开发和实现。通过ASP.NET的学习,我成功的使用WEB2.0和MVC2.0两种架构模式分别开发了资讯类网站和商务类网站。下面我将对开发过程的学习进行总结。
首先是资讯类网站的开发,选择使用了方便入手的web2.0架构平台。Web2.0以逻辑上的表示层、数据访问层、业务逻辑层。通过三层架构间函数的调用,可以增加系统的安全性,也可以提高代码的可读性。通过对资讯类网站的开发我逐渐熟悉了ASP.NET的开发过程以及交互模式,通过与ADO.NET的配合使用,完成了与数据库的交互工作。半个月的时间初步完成了资讯类新闻网的开发工作,实现了用户注册、登录,分栏目显示图文新闻信息,点击查看详情。后台实现了对用户角色的管理以及新闻的管理、编辑、上传工作。较完整的理解了ASP.NET中WEB2.0架构的基本开发过程。对三层架构有了初步的理解和认识。接下来的时间我学习了使用MVC2.0开发商务网站。MVC同样是三层架构模型。与WEB开发架构的主要区别在于,MVC是物理上的三层架构,而WEB是逻辑上的三层架构。MVC解放了路由机制,使得页面的交互速度大幅提高。通过访问controler层,调用DAL层函数,使用MODEL层存储数据,使用DBHELPER类中的通用方法,实现参数的传递,以及与数据库的交互,最终将参数返回到VIEW层,实现页面的显示。MVC架构的开发优势在于,给了程序员绝对的自由,可以通过JS、JQ写出各种需要的显示效果,页面的可读性和自由性也大大提高。同时,MVC也兼顾了WEB的优点,方便了代码的模块化传递,增加代码的复用性,提高代码的可读性。通过一个半月的开发工作,我成功实现了商务网站的基本功能,实现了支付接口,前台的注册登录,商品展示、购买。后台的订单管理,用户管理以及角色授权等功能。
通过学习ASP.NET我基本熟悉了网站的开发模式、架构以及开发流程,通过实际项目的演练,也让我能够将大学学习中的理论运用到实践。现阶段所需要的就是继续加深C#的学习深度,了解JS、JQ库的写作规范,争取能够尽早使用自己编写的JS库完成个人网站的建设开发工作。很感谢成都华育国际的老师和同学在这几个月时间里给我的帮助,让我能够在ASP.NET的开发中达到入门水平。希望通过自身的努力,将自己的技术进一步提高。
第五篇:ASPNET程序设计实习报告
天津农学院
题目:简易借书管理网站学
姓
专
班
成ASP.NET程序设计》
教学实习报告
号: 201345010222
名:雷培伦
业: 计算机信息管理___ 级: 13级计管1班_______ 绩:
《
背景与目的
《ASP.NET课程设计》是本学期的一本很重要的专业课,本次课程设计就是为了检测本学期对这本书的掌握情况。本次课程设计也将作为期末考评。开发环境与开发工具
网站开发环境:Microsoft Visual Studio 2010集成开发环境。
网站开发语言:C#。
数据库:Microsoft Visual Studio 2010内置数据库。
开发环境运行平台:Windows 7。主要功能
主要实现了简单的登录功能、注册功能和基本的增删查改的功能。4 设计与实现
4.1 数据库设计与实现
表1 用户表
序号 字段名 类型 长度 索引 备注 1 工号 Int 标识列 自动编号 2 密码 Varchar 50 3 级别 Char 50
表2 图书表
序号 字段名 类型 长度 索引 备注 1 图书编号 Int 50 标识列 自动编号 2 图书名称 Char 50 3 出版社编号 Varchar 50 4 作者 Char 50 5 价格 Char 50 6 ISBN Varchar 50 7 状态 Char 50 8 类型编号 Varchar 50 9 出版日期 Date 50 10 内容提要 Varchar 50
表3借书表
序号 字段名 类型 长度 索引 备注 1 工号 Int 50 标识列 自动编号 2 图书编号 Char 50 3 图书名称 Char 50
表4出版社表
序号 字段名 类型 长度 索引 备注 1 出版社编号 Int 50 标识列 自动编号 2 出版社名称 Char 50
表5出版社表
序号 字段名 类型 长度 索引 备注 1 出版社编号 Int 50 标识列 自动编号 2 出版社名称 Char 50
表6图书类型表
序号 字段名 类型 长度 索引 备注 1 图书名称 Int 50 2 类型编号 Char 50
表7预约表
序号 字段名 类型 长度 索引 备注 1 图书编号 Int 50 标识列 自动编号 2 图书名称 Char 50 8 类型编号 Varchar 50 9 工号 Date 50 4.2 系统设计与实现
4.2.1构建网站配置文件、全局文件。
配置文件关键代码: name=“connstr” connectionString=“server=MM-PCSQLEXPRESS;database=shixun;integrated security=true;” providerName=“System.Date.SqlClient”/> connectionString=“Data Source=MM-PCSQLEXPRESS;Initial Catalog=shixun;Integrated Security=True” providerName=“System.Data.SqlClient”/> Catalog=shixun;Integrated Source=MM-PCSQLEXPRESS;Initial Security=True” providerName=“System.Data.SqlClient”/> Catalog=shixun;Integrated Source=MM-PCSQLEXPRESS;Initial Security=True” providerName=“System.Data.SqlClient”/> Catalog=shixun;Integrated Source=MM-PCSQLEXPRESS;Initial Security=True” providerName=“System.Data.SqlClient”/> Catalog=shixun;Integrated Source=MM-PCSQLEXPRESS;Initial Security=True” providerName=“System.Data.SqlClient”/> Catalog=shixun;Integrated Source=MM-PCSQLEXPRESS;Initial Security=True” providerName=“System.Data.SqlClient”/> Catalog=shixun;Integrated Source=MM-PCSQLEXPRESS;Initial Security=True” providerName=“System.Data.SqlClient”/>
4.2.3登录页面的设计。
public partial class 登录页面: System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e){ } protected void Button1_Click(object sender, EventArgs e){ string gh = id1.Text;string mm = id2.Text;string sql = “select 工号,密码 from 用户表 where 工号='” + gh + “'and 密码='” + mm + “' ”;SqlConnection
conn
=
new
SqlConnection(“server=MM-PCSQLEXPRESS;Database=shixun;Integrated Security=true;”);SqlCommand cmd = new SqlCommand(sql, conn);conn.Open();string id;try { id = cmd.ExecuteScalar().ToString();catch { id = null;} finally { cmd.Dispose();conn.Close();conn.Dispose();} if(id!= null){ Session[“密码”] = mm;Session[“工号”] = gh;Response.Redirect(“首页.aspx”);
} else { this.Label1.Visible = true;this.Label1.Text = “用户名或密码错误”;} } } 运行页面图片:
4.2.4修改密码页面的设计,修改密码成功后返回登录页面。public partial class altpwd : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e){ Label1.Text = Session[“工号”].ToString();
} protected void Button1_Click(object sender, EventArgs e){ string ymm = T1.Text.Trim();string xmm = T2.Text.Trim();string qrmm= T3.Text.Trim();SqlConnection conn = new SqlConnection();conn.ConnectionString ConfigurationManager.ConnectionStrings[“connstr”].ToString();SqlCommand comm = new SqlCommand();comm.Connection = conn;conn.Open();comm.CommandText = string.Format(“update 用户表 set 密码='{0}'where 工号='{1}'and 密码='{2}'”, xmm,Session[“工号”].ToString(),ymm);
= int n = comm.ExecuteNonQuery();if(n > 0){ Response.Redirect(“~/登录页面.aspx”);Label1.Text = “密码修改成功请重新登录!”;} else { Label1.Text = “密码修改失败!”;} comm.Dispose();conn.Close();conn.Dispose();} } 运行页面图片:
4.2.5添加用户页面的设计。
public partial class 添加用户: System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e){ } protected void Button1_Click(object sender, EventArgs e){ SqlConnection conn = new SqlConnection();conn.ConnectionString ConfigurationManager.ConnectionStrings[“connstr”].ToString();SqlCommand comm = new SqlCommand();comm.Connection = conn;try { conn.Open();comm.CommandText = string.Format(“insert 用户表(工号,姓名,教研室,密
码,状
态,级
别)= values('{0}','{1}','{2}','{3}','{4}','{5}')”,T1.Text.Trim(),T2.Text.Trim(),T3.Text.Trim(),T4.Text.Trim(),T5.SelectedValue,T6.SelectedValue);int n = comm.ExecuteNonQuery();if(n > 0){ Response.Redirect(“~/登录页面.aspx”);} else
{ Label2.Visible = true;Label2.Text = “登录失败!”;} } catch(Exception ex){ 9 Label2.Visible = true;Label2.Text = ex.Message.ToString();} finally { comm.Dispose();conn.Close();conn.Dispose();} } } 运行页面图片:
4.2.6添加图书页面的设计。
public partial class addbook : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e)10 { } protected void Button1_Click(object sender, EventArgs e){ string a_1 = T1.Text.Trim();string a_2 = T2.Text.Trim();string a_3 = T3.Text.Trim();string a_4 = T4.Text.Trim();string a_5 = T5.Text.Trim();string a_6 = T6.Text.Trim();string a_7 = T7.SelectedValue;string a_8 = T7.Text.Trim();string a_9 = T9.Text.Trim();string a_10 =T10.Text.Trim();SqlConnection conn = new SqlConnection();conn.ConnectionString ConfigurationManager.ConnectionStrings[“connstr”].ToString();SqlCommand comm = new SqlCommand();comm.Connection = conn;try { conn.Open();comm.CommandText = string.Format(“insert 图书表(图书编号,图书名称,出版社编号,作者,价格,ISBN,状态,类型编号,出版日期,内容提要)values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}')”,a_1,a_2,a_3,a_4,a_5,a_6,a_7,a_8,a_9,a_10);int n = comm.ExecuteNonQuery();if(n > 0){ Label1.Visible = true;
= 11 Label1.Text = “添加图书成功!”;} else { Label1.Visible = true;Label1.Text = “添加图书失败!”;} } catch(Exception ex){ Label1.Visible = true;Label1.Text = ex.Message.ToString();} finally { comm.Dispose();conn.Close();conn.Dispose();} } } 运行页面图片:
4.2.7注销图书页面的设计。
注销图书主要是连接数据库用Gridview显示查询,然后跳转到详细信息页面,显示详细信息和删除图书。
public partial class bookinfo : System.Web.UI.Page { string tsbh;SqlConnection conn = new SqlConnection();SqlCommand comm
=
new
SqlCommand();//string
tsbh =Request.QueryString[“id”];protected void Page_Load(object sender, EventArgs e){ tsbh =Request.QueryString[“id”];conn.ConnectionString ConfigurationManager.ConnectionStrings[“connstr”].ToString();comm.Connection = conn;try {
=
conn.Open();comm.CommandText = string.Format(“select 图书编号,图书名称,作者,出版社名称,出版日期,内容提要 from 图书表 a,出版社表 b where a.出版社编号=b.出版社编号 and 图书编号='{0}'”, tsbh);SqlDataReader sdr = comm.ExecuteReader();while(sdr.Read()){ l_tsbh.Text = sdr[“图书编号”].ToString();l_sm.Text = sdr[“图书名称”].ToString();l_zz.Text = sdr[“作者”].ToString();l_cbs.Text = sdr[“出版社名称”].ToString();l_cbrq.Text = sdr[“出版日期”].ToString();l_nrty.Text = sdr[“内容提要”].ToString();} } catch(Exception ex){ l_sm.Text = ex.Message.ToString();} finally { comm.Dispose();conn.Close();conn.Dispose();} } protected void Button1_Click1(object sender, EventArgs e){ conn.ConnectionString 14
= ConfigurationManager.ConnectionStrings[“connstr”].ToString();comm.Connection = conn;try { conn.Open();//conn.ConnectionString ConfigurationManager.ConnectionStrings[“connstr”].ToString();comm.CommandText = string.Format(“delete from 图书表 where 图书编号='{0}'”,tsbh);int n = comm.ExecuteNonQuery();
if(n > 0)
= { Response.Write(“”);} else { Response.Write(“”);} } catch(Exception ex){ l_sm.Text = ex.Message.ToString();} finally { comm.Dispose();conn.Close();conn.Dispose();
删
除
失
败!
删
除
成功
!15 } } } 运行页面图片:
讨论
课程设计作业在同学的帮助下勉强完成,网站设计非常简陋,诸多漏洞到现在也没能得到完善解决,但是在一直努力完善的过程中,自己还是学到了很多知识也收获了很多感想,同时弥补了课堂上没有吸收进的知识。
通过这次课程设计,我意识到学好计算机是需要付出很多汗水的,而不是嘴上说说和光凭兴趣就能学的好的。
由于自己的懒惰,没能在上个学期及时完成网站的制作,希望老师能够给我一个机会,在以后的学习上,我会更加的努力,认真,勤奋,坚决在规定的时间内完成学习任务。
参考文献
[1] 陈长喜主编;王宏坡,何玲,赵新海编著.ASP.NET程序设计基础教程[M].北京:清华大学出版社,2011.9.