仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 432|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网页设计搭建体系框架发明的三个Web.Config成绩...

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 23:41:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件web|成绩--------------------------------<出格声明,此文档是转载,黄勇BLOG的文章>-----------------------------------
搭建体系框架发明的三个Web.Config成绩

依照微软的Duwamish7搭建一个Web体系框架,固然说是一个现成的框架在中间,却仍是碰到一些烦人的小成绩,个中有好几个就是这个Web.Config弄的鬼!
1。搭建好的体系框架运转堕落,报甚么不克不及准确读取ApplicationConfiguration设置节,但我的设置节部分完整是从Duwamish7中Copy过去,并且今天还好好的啊?也不记得弄了多久,试了几次本人也都以为不成能的办法,都无功而返。最初,看着它发愣,束手无策时,一个动机闪过:ApplicationConfiguration?是否是太多了。改成AppCofiguration,再试,天啊!居然乐成了!晕!
<configSections>
<sectionname="AppConfiguration"type="AVWeb.SystemFramework.ApplicationConfiguration,AVWeb.SystemFramework"/>
</<SPAN>configSections>
2。也是运转报Web.Config某正文行堕落,正文以下:
--Databasetype0--Access1--SqlServer-->
由于对这个不太熟习,也是弄了好久才晓得:<!---->中包括的正文不克不及包括有"--"字符
3.想在页面上挪用Javascript写的一个日历控件,个中有中文正文,把js文件包含在页面中,但一运转,怎样也不克不及一般装载,总是报“未停止的字符串常量”等毛病,弄了半天以后,才分明是字符集弄的鬼!
Web.Config文件中设置的字符集十分主要,也就是这个:<globalizationresponseEncoding="gb2312"requestEncoding="gb2312"/>
假如程序中有中文,但Encoding又不是gb2312的话,大概良多稀里糊涂的成绩就来了!
Duwamish7进修条记(二)
SystemFrameWork项目
 SystemFrameWork项目是一个能间接移植到其余应当程序的项目,能够不修正或很少的修正代码而间接利用。
  项目次要为3个类。
1.ApplicationConfiguration类
此类为使用级的设置类,完成IConfigurationSectionHandler接口。与后面讲的DuwamishConfiguration类完成办法类同。次要办法为Create(),OnApplicationStart(),ReadSetting()。
假如要利用此类,需于Global.asax的Application_OnStart事务中挪用ApplicationConfiguration.OnApplicationStart(Context);
publicstaticvoidOnApplicationStart(StringmyAppPath)
{
appRoot=myAppPath;
System.Configuration.ConfigurationSettings.GetConfig("ApplicationConfiguration");
System.Configuration.ConfigurationSettings.GetConfig("DuwamishConfiguration");
System.Configuration.ConfigurationSettings.GetConfig("SourceViewer");
}
此办法通用挪用ConfigurationSettingis.GetConfig()办法经由过程Web.Config中的获得对应的剖析类,挪用响应的Create()办法。假如没有对应的设置剖析类则可间接挪用System.Configuration.NameValueSectionHandler类剖析,GetConfig("SourceViewer")便是云云。
2.ApplicationAssert类
此类次要用来协助开辟职员举行毛病反省,日记纪录等。次要有Check(),CheckCondition(),GenerateStackTrace()三办法和LineNumber属性。
[ConditionalAttribute("DEBUG")]使用于Check(),和GenerateStackTrace()办法,假如Debug常量被界说,此办法能够被挪用。
3.ApplicationLog类
此类次要用来举行日记纪录。
界说Error(1)、Warning(2)、Info(3)、Verbose(4)四个TraceLevel级别纪录日记调试和跟踪信息.详细设置于Web.Config的设置节中界说。此类中一切办法均为static办法,是次要的为staticvoidWriteLog(level,messageText)
假如写进的TraceLevel不年夜于设置中界说的级别,则把对应的调试、跟踪信息按界说的级别写进Windows事务日记中和界说的跟踪文件中.
ApplicationLog类的机关函数声明为privatestatic,在对ApplicationLog类举行第一次挪用时从设置文件中获得设置信息举行初始化。

疑问:
1.在staticApplicationLog()中使用了System.Threading.Monitor,包管多线程操纵的平安性。为何对ApplicationLog要举行锁的把持?
2.对System.Diagnostics定名空间中某些类了解不太分明。
MSDN匡助:
1.Monitor类
ms-help://MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfsystemthreadingmonitorclasstopic.htm
2.System.Diagnostics定名空间(供应特定的类,使您可以与体系历程、事务日记和功能计数器举行交互)
ms-help://MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfsystemdiagnostics.htm
postedonFriday,December17,200411:27AM
Duwamish7进修条记(三)
DataAccess项目
DataAccess项目中共4个类:Books类,Categories类,Customers类,Orders类.均完成了IDisposable接口。用来封闭举动的数据库毗连。
这是MS倡始的一种开释非托管资本的Dispose形式。有关Dispose形式《.NET框架程序计划(订正本)》的19章“主动内存办理(渣滓搜集)”有杰出的叙述.
 类中经由过程挪用存储历程,封装了对4个营业工具的Select,Insert,Update操纵。
  Select操纵经由过程SqlDataAdapter的Fill办法添补对应的承继自DataSet的营业实体类,前往给挪用者。Books类和Categories类只要Select操纵.
 Insert和Update操纵经由过程一个private函数前往InsertCommand或UpdateCommand工具。再于对外的的Public函数挪用Private外部函数完成响应操纵。Customers类中完成Insert,Update,Select操纵,Orders类只要Insert操纵。
在Customers类的LoadCustomerByEmail()办法中有对ApplicationAssert类的CheckCondition()办法挪用
ApplicationAssert.CheckCondition(data.Tables[CustomerData.CUSTOMERS_TABLE].Rows.Count<=1,"IntegrityFailure:non-uniquee-mailaddress",ApplicationAssert.LineNumber);
疑问:
1.数据会见层感到完成了营业逻辑层的内容,平常如LoadCustomerByEmail()等办法都是写在营业逻辑层的。
2.是不是有需要笼统出一个完整对数据库操纵的基类,完成对数据库底层的操纵?而不是在每一个类如:Books,Customers中均一次次重写如SqlCommand工具,Dispose形式?
Duwamish7进修条记(四)
BusinessRules项目
1.Customer类
长见地了!在《Duwamish7进修条记(三)》中还在想营业逻辑层写些甚么器材。
校验,仍是校验!每行,每列,包含范例和长度,想一想自已在项目标校验,真的有点汗颜!
//----------------------------------------------------------------
//FunctionValidate:
//Validatesandcustomer
//Returns:
//trueifvalidationissuccessful
//falseifinvalidfieldsexist
//Parameters:
//[in]customerRow:CustomerDatatobevalidated
//[out]customerRow:Returnscustomerdata.Iftherearefields
//</p>实现规模效益。与传统的用户拥有硬件软件所有权和使用权以及传统的应用服务商提供一对一的服务模式不同,ASP拥有应用系统所有权,用户拥有使用权,应用系统集中放在ASP的数据中心中,集中管理,分散使用,以一对多的租赁的形式为众多用户提供有品质保证的应用技术服务,实现规模效益。
小妖女 该用户已被删除
沙发
发表于 2015-1-20 11:16:11 | 只看该作者
掌握asp的特性而且一定要知道为什么。
精灵巫婆 该用户已被删除
板凳
发表于 2015-1-25 23:05:54 | 只看该作者
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
冷月葬花魂 该用户已被删除
地板
发表于 2015-2-4 08:45:41 | 只看该作者
作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。
山那边是海 该用户已被删除
5#
发表于 2015-2-9 20:32:30 | 只看该作者
另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件)
兰色精灵 该用户已被删除
6#
发表于 2015-2-27 21:02:57 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
飘灵儿 该用户已被删除
7#
发表于 2015-3-9 14:05:27 | 只看该作者
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
只想知道 该用户已被删除
8#
发表于 2015-3-16 22:51:37 | 只看该作者
ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。
飘飘悠悠 该用户已被删除
9#
发表于 2015-3-23 06:16:09 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 04:10

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表