07 2013 档案

vs2010自带的报表
摘要:本例用来显示Northwind中的order details表中的数据交分组1.建立一WinForm程序,并建立一数据库连接,选择order details表,此时会自动建立一个xsd的数据集类,如下图2.在项目中右键,新添加一个Report1.rdlc报表文件,并向此空白报表中添加一表格,如下图数据集属性窗口中的“名称”是此报表的名称,在后面会用到,一定要记住。以下为添加了表格的报表3.从“报表数据”中把数据字段拖动到此表格中,行或列可以用右键“插入”功能即可。字段放好后,进行以orderid分组,“行组”表示和字段显示在同一行中,“列组“是专门起了一列。 4.给组头及组尾中的相关属性框进行 阅读全文

posted @ 2013-07-30 11:50 天上星 阅读(10491) 评论(0) 推荐(1) 编辑

水晶报表主从关系
摘要:开发环境:VS2010水晶报表连接数据源有两种模式,Pull和Push两种,即拉和推。 用水晶报表的“数据库专家”直接连接数据库,报表数据会即时显示在报表上就是“拉”模式,即把数据直接从数据库拉到报表上,这样与程序没有直接关系,即报表与数据库之间多了一个数据连接,与程序的数据库连接没有直接关系。 先在程序中建立数据集,然后设计报表,再用程序填充数据到数据集,这样报表会显示这些数据,这就是“推”模式。以下为开发水晶报表的步骤:下载水晶报表的插件并安装打开vs2010,新建一个WinForm程序,在“资源管理器”中设置此项目的属性,把应用程序的目标框架“.Net Framework 4 Clien 阅读全文

posted @ 2013-07-30 10:48 天上星 阅读(2903) 评论(3) 推荐(0) 编辑

WebService调用http://www.webxml.com.cn中的一些服务示例
摘要:1.打开http://www.webxml.com.cn网站下的“全部WebService”,会看到如下图的图片 2.点击打开WSDL连接,如下图,并保存为一个后缀名为wsdl文件,放在项目的根目录下 3.点击菜单“Component-Import WSDL”,弹出导出WSDL窗口,把上面产生文件的文件地址填入到框中,如下图4.点击“Next”直到产生一MobileCodeWS.pas文件,此文件用于让客户端调用的接口文件.加入此文件的引用。如下为主图界面 5.打开MobileCodeWS.pas可以看到defURL = 'http://webservice.webxml.com.cn 阅读全文

posted @ 2013-07-17 16:17 天上星 阅读(1176) 评论(0) 推荐(0) 编辑

WebService开发应用
摘要:WebService是运行于服务端(一般放在信息服务器上的)让客户端来调用的。以下开发两个简单的实例1.自己开发服务端自己调用(vs2010) 1).菜单:“新建-项目”,在打开的窗体中选择,如下图: 2).在“项目解决方案”中右击此项目并“添加-新建项”,然后选择"web服务",如下图 3).打开新添加的页面,在其中加入四个函数,一定在四个函数的上方加上“[WebMethod]”,这是说明让客户端来调用的函数,如果上面没有或注释掉,就表示客户端不能访问它。下面把它默认的HelloWord函数注释,源码如下:using System;using System.Collect 阅读全文

posted @ 2013-07-17 15:44 天上星 阅读(4203) 评论(0) 推荐(2) 编辑

12.URL重写
摘要:为什么要URL重写?1.有利于SEO(搜索引擎优化),带参数的RUL权重较低。2.地址看起来更正规,推广uid. 如我们一般在访问网页是会带参数,http://aaa.com/view.htm?id=1...,用URL重写后可以这样访问http://aaa.com/view-1.htm就可以访问参数id=1的页面,但实际上view-1.htm是不存在的,这个处理是在全局文件的Application_BeginRequest 事件 中处理后导向id=1的页面的。伪静态:看起来像普通页面,而非动态生成的页面。原理:在Global.asax的Application_BeginRequest中读取Re 阅读全文

posted @ 2013-07-06 11:46 天上星 阅读(324) 评论(0) 推荐(0) 编辑

11.在Global的Application_Error处理错误示例
摘要:Application_Error是在程序出问题时触发的事件。这里面要用到错误页的情况,所以要配置web.config的customError项。1.建立Global文件,在它的Application_Error中写入以下代码(TextFile1.txt 是要记录出错信息的日志): protected void Application_Error(object sender, EventArgs e) { Exception ex = HttpContext.Current.Server.GetLastError(); File.Wri... 阅读全文

posted @ 2013-07-06 11:18 天上星 阅读(2982) 评论(0) 推荐(1) 编辑

17.错误页
摘要:当页面发生错误的时候,ASP.net会将错误信息展示出来,这样一来不好看,二来会泄露网站的内部实现信息,给网站带来安全隐患。因此需要定制错误页,发生错误时显示开发人员定制的页面。配置web.config,配置customErrors区域 mode三个可选值:on:总是显示定制错误页面;off:不显示定制错误页面,直接显示调用堆栈等异常信息;remoteonle:对于本机访问显示调用堆栈等异常信息,对于外部用户的显示定制错误页面。一般设置为remoteonly,这样发生错误的话,管理员可以在服务器的浏览器中看详细错误信息,普通用户看不到。可以在定义错误页中判断Request.UserHostA. 阅读全文

posted @ 2013-07-06 10:47 天上星 阅读(302) 评论(0) 推荐(0) 编辑

10.在Global全局文件中的Application_BeginRequest示例
摘要:只要有人访问本网站,都要执行全局文件的Application_BeginRequest事件。因此我们可以防盗链。示例要求:凡不是网站本机登录的都给客户端提示,用图片显示。分析:由于网页在加载时不是一次性全部加载,如先加载网页,再加载相关的js文件,再加载图片等,因此在客户端上有个图片元素,在此事件中判断请求的类型是否为图片并且是否是以localhost登录的,如果不是就发送客户端的另个图片。开发步骤: 1.在目录中放两个图片,一个图片为正常显示,另一个为禁用提示的图片 2.新建一HTML页面,它的源码为: 3.添加Global.asax文件,写入以下内容using System... 阅读全文

posted @ 2013-07-06 10:25 天上星 阅读(14541) 评论(0) 推荐(0) 编辑

9.全局文件
摘要:添加web->全局应用程序类,注意文件名不要改全局文件是对Web应用声明周期的一个事件响应的地方将Web应用启动时初始化的一些代码写到Application_Start中,应用关闭的时候Application_End调用。当一个Session启动的时候Session_Start被调用,Session结束(用户主动退出或都超时结束)Session_End被调用。当一个用户请求来的时候Application_BeginRequest方法被调用当应用中出现未捕获异常,Application_Error被调用(可以参考ASP.net中的错误处理机制),可以用HttpContext.Current 阅读全文

posted @ 2013-07-06 10:14 天上星 阅读(345) 评论(0) 推荐(0) 编辑

8.WCF简化的 AJAX(*)
摘要:开发步骤:添加一个Web项目,在Web项目中新建“新建项”->"Web"->"启用了AJAX的WCF服务"页面上拖放ScriptManager控件,ScriptManager的Services属性中新增一项,Path属性设置为服务路径,比如"~/Service1.svc"调用服务端方法的时候Service1.DoWork(OnDoWorkSucceed,OnDoWorkFailed),Service1为服务类名,DoWork为方法名,OnDoWorkSucceed是调用成功时被回调的函数(Javascript中的委拖),O 阅读全文

posted @ 2013-07-06 09:11 天上星 阅读(242) 评论(0) 推荐(0) 编辑

7.微软AJAX的解决方案
摘要:Asp.net中内置的简化AJAX开发的控件UpdatePanel非常方便,但是它会带了许多viewstate,所以高手们并不喜欢它。但它开发在内网应用时可以考滤放入ScriptManager,将要实现AJAX效果的控件放到UpdatePanel中即可。UpdatePanel可以用HttpWatch看一下,它会发送大量的viewstate.通信量巨大。只把需要无刷新更新的部分放到UpdatePanel中Timer也可以实现定时的AJAX效果,相当于用了JavaScript的SetInterval函数。UpdateProgress用于显示(提示)处理的过程也可以考滤AJAXToolKit,比up 阅读全文

posted @ 2013-07-05 17:25 天上星 阅读(160) 评论(0) 推荐(0) 编辑

6.投票系统
摘要:要求: 1.界面上有两个按钮,一个是支持,一个是反对,并显示它们的计数,如支持(10),反对(3) 2.一个ip用户在24小时内只能投一次票,如果在24小时内再次投票则给提示解析: 建立两个数据表,一个为用户的表,记录用户ip和点击时的时间,时间主要用来判断当前时间和他原来点击时间是否过24小时 另一表为按钮表,记录按钮的类型和计数,类型1为支持票数,2为反对票数开发步骤: 1.建立数据表及强类型数据集 CheckHours():查询此ip是否过24小时SELECT id, ip, date FROM dbo.T_Stock where ip=@ip and datediff(hour,[.. 阅读全文

posted @ 2013-07-05 17:14 天上星 阅读(277) 评论(0) 推荐(0) 编辑

5.JSON
摘要:AJAX传递复杂数据如果自己进行格式定义的话会经历组装、解析的过程,因此AJAX中有一个事实上的数据传输标准JSON. JSON将复杂对象序列化为一个字符串,在浏览器端再将字符串反序列化为JavaScript可以读取的对象。JSON被几乎所有语言支持。C#中装.Net对象序列化为JSON字符串的方法: JavaScriptSerializer().Serialize(p),JavaScriptSerialzer在System.Web.Extenslons.dll中,是.net3.x中新增的类,如果在.net2.0中则需要用第三方的组件。JQuery AJAX得到的data是JSON格式数据,用 阅读全文

posted @ 2013-07-05 16:50 天上星 阅读(259) 评论(0) 推荐(0) 编辑

4.无刷新评论
摘要:1.用户可以提交自己的评论,并显示(添加)在评论上。2.分别用html页面和aspx页面进行显示。html是一开始就加载所有的评论,而aspx是用repeater进行加载的,把repeater全放在ul中,当用户评论成功后就把此评论内容也加载到客户页面上。3.分别用到了两个一般处理程序(服务端),一个为客户端读取评论的数据服务,把每条评论用$隔开,每条记录的内容用|隔开,在客户端进行split分解再显示出来。另一个一般处理程序(服务端)用来写入评论的,此服务端控制用户是否会有骂人等禁用语言。4.建立数据表及强类型集: 5.建立加载两个服务端。 1).HTMLComment.ashxusing 阅读全文

posted @ 2013-07-05 15:52 天上星 阅读(217) 评论(0) 推荐(0) 编辑

3.输入商品名称后自动弹出其价格示例
摘要:1.创建数据表,设定商品名称和其价格,如下图: 2.创建强数据集 并增加GetDataByName方法,是用来根据商品名称来查询其对应的价格。SELECT ID, Name, price FROM dbo.T_ProductPrice where Name=@Name3.创建服务端,用来查询商品价格using System;using System.Collections.Generic;using System.Linq;using System.Web;using 输入商品名自动弹出价格.DataSetProductPriceTableAdapters;namespace 输入商品名自动弹 阅读全文

posted @ 2013-07-05 11:34 天上星 阅读(1389) 评论(0) 推荐(0) 编辑

2.JQuery AJAX
摘要:new ActiveXObject("Microsoft XMLHTTP")是IE中创建XMLHTTPRequest对象的方法。非IE浏览器创建方法是new XmlHttpRequest().为了兼容不同的浏览器需要编写很多代码。用JQuery的回调函数($.post(data,textStatus))中data参数为服务器返回的数据,textStatus为服务器返回状态码,textStatus为"success"表示通信成功。JQuery中提供了简化ajax使用的方法。$.ajax()函数是jQuery中提供的ajax访问函数,$.post()是对$. 阅读全文

posted @ 2013-07-05 11:21 天上星 阅读(340) 评论(0) 推荐(0) 编辑

1.AJAX简介
摘要:没有AJAX会怎么样?普通的ASP.Net每次执行服务端方法的时候都要刷新当前页面,比如实现显示服务器时间。每次都要刷新页面的坏处:页面刷新打断用户操作、速度慢、增加服务器的流量压力。如果没有AJAX,像在优酷网站看视频的过程中如果点击了评论等功能,页面就会刷新,视频就会被打断。AJAX(Asynchronous JavaScript and XML,异步JavaScript和XML)是一种进行页面局部异步刷新的技术,用AJAX向服务器发送请求和获得服务器返回的数据并且更新到界面中,不是整个页面刷新,而是在HTML页面中使用JavaScript创建XMLHTTPRequest对象来向服务器发出 阅读全文

posted @ 2013-07-05 09:17 天上星 阅读(371) 评论(0) 推荐(0) 编辑

16.缓存(Cache)
摘要:如果每次进入页面的时候都查询数据库生成页面内容的话,如果访问量非常大,则网站性能会非常差。而如果只有第一次访问的时候才查询数据库生成页面内容,以后都直接输出内容,则能提高系统性能,这样无论有多少人访问都只访问一次数据库。缓存是一种用空间换取时间的技术,存在于计算机中很多地方,用来将一些慢速设备中的常用数据保存在快递设备中,取数据的时候直接从快速设备中取。比如CPU的二级缓存、windows文件读取缓存。缓存存在失败的问题:为了保存从缓存中读取数据和慢速数据中数据一致,则需要在慢速数据中对应的数据发生变化的时候清除缓存中相应的数据。缓存是改进网站性能的第一个手段,就像索引是改进数据库性能的第一个 阅读全文

posted @ 2013-07-04 15:59 天上星 阅读(366) 评论(0) 推荐(0) 编辑

15.禁用ViewState
摘要:默认情况下ASP.net是启用ViewState的,这样在页面中会生成冗长的隐藏字段,ViewState对于需要PostBack处理的页面才可能有用,对于不需要交互的页面则完全没有必要用ViewState.ViewState是保存上次的信息的,一般有postback功能才会用到ViewState.禁用ViewState的方式 1.页面整体禁用 在页面顶部Page中EnableViewState="False" 2.指定控件禁用 在控件上EnableViewState="False"页面禁用ViewState以后并没有完全去掉ViewState,只要Vie 阅读全文

posted @ 2013-07-04 15:22 天上星 阅读(231) 评论(0) 推荐(0) 编辑

14.示例解析
摘要:做一个相对完整的示例,用来显示公司的招聘、新闻、产品介绍等功能。1.先在工程中建立完整的文件夹,(Admin为后台管理用文件夹,App_Data是数据库文件夹、BLL为业务逻辑文件夹、css为样式文件夹、DAL为数据操作类文件夹,放置强类型数据集、ErrorPages为错误页文件夹、imgs为图片文件夹、js为调用js,jQuery,CKEditor等的文件夹、Library为要用到的库文件夹、master为母版文件夹、upload为上传文件的文件夹、UserControl为用户自定义控件的文件夹),如下截图:2.建立数据表,T_News(新闻). T_Products(产品表), T_Pro 阅读全文

posted @ 2013-07-04 14:26 天上星 阅读(636) 评论(0) 推荐(0) 编辑

13. vs2010 ClientID bug处理
摘要:在VS2010中的产生ClientID有几种方式,每个控件或页面有个ClientIDMode属性,可以用来决定产生ClientID的方式,它有AutoID,Static,Inherit,Predictable,具体区别请在网上查找。默认为AutoID.但在VS2010中产生的ClientID是有bug.即产生的ClientID和客户端产生的HTML的ID是不一样的,因此在用js或jQuery的函数中要调用指定ID的元素时系统提示不存在此元素。处理思路: 由于每个元素产生的ClientID是唯一的,我们可以给要用到的元素设定一个或多个属性,这此属性也是唯一的,这样可以在js中用这些属性来找到此元 阅读全文

posted @ 2013-07-04 10:21 天上星 阅读(290) 评论(0) 推荐(0) 编辑

12.HTML编辑器(CKEditor、CKFinder集成)
摘要:CKEditor原名为FckEditor,是著名的HTML编辑器,可以在线编辑HTML内容。配置参考文档:主要将ckeditor中的lang、plugins、skins、ckeditor.js、config.js、contents.css、styles.js解压后放到项目的目录下,在发贴页面引用ckeditor.js,然后设置多行文本框的class="ckeditor",代码中仍然可以通过TextBox控件的Text属性来访问编辑器的内容。由于页面提交的时候asp.net会把富文本编辑器中的html内容当成攻击内容,因此需要在aspx中的Page标签中设置ValidateR 阅读全文

posted @ 2013-07-04 09:26 天上星 阅读(1726) 评论(0) 推荐(0) 编辑

11.单独页面编辑
摘要:ListView的在位编辑只适合字段比较少、比较简单的场合,复杂数据的编辑、插入、查看等要在单独页面中才可创建一个单独的页面Edit***.aspx,然后在ListView页面中的编辑模板中放一个编辑的超连接,向Edit***.aspx传递?id=1&action=edit.页面顶端增加一个Edit***.aspx?action=addnew的超连接。使用FormView控件进行单条数据的编辑,在Page_Load中判断action,然后使用FormView1.ChangeMode方法切换FormView的模式。强类型DataSet中增加一个GetDataByID方法,在ObjectD 阅读全文

posted @ 2013-07-03 17:21 天上星 阅读(357) 评论(0) 推荐(0) 编辑

10.高效分布
摘要:ListView默认的分页是先从数据源取得所有数据,然后再截取当前页面的部分,在数据量非常大的情况下效率非常低,因此默认的分布基本不能用。应该是只从数据源取得要显示的数据即可。SQL中语句中取得分页数据的方法为:Select * ,ROW_NUMBER() over(order by 排序字段) as rownum From Table. ROW_NUMBER()函数是SQL2005之后提供的一个计算结果集行数的函数,over中指定排序规则,Row_Number()从1开始。只是把数据中的记录从1排序。SQL语句可以这样排序:Select * from (Select id,name,age, 阅读全文

posted @ 2013-07-03 16:45 天上星 阅读(411) 评论(0) 推荐(0) 编辑

9.DataPager
摘要:ListView搭配DataPager控件实现分页。有两种使用方式:一是将DataPager声明到ListView中;一种是DataPager\ListView没有嵌套关系,然后将DataPager的PagedControlID设定为要分页的ListView. 这两种没什么区别,一般用"配置ListView"自动生成的内置方式即可。DataPager的PageSize属性为一页的条数。(*)实现IPageableItemContainer接口的控件都可以使用DataPager进行分页,但是ASP.net内置的控件目前只有ListView实现了这个接口。DataPager 中 阅读全文

posted @ 2013-07-03 16:02 天上星 阅读(355) 评论(0) 推荐(0) 编辑

8.行命令按钮
摘要:ListView的行按钮和Repeater一样,不同的是取当前行数据的方式,int index=((ListViewDataItem)e.Item).DisplayIndex取出操作行的行号,ListView1.DataKeys[index].Value取出主键的值,如果对数据进行了操作,最后要对ListView执行DataBind刷新数据,由ListView的DataKeynames属性决定存储哪些字段值为主键,可以多个主键(和数据库主键没有直接关系),所有有Values.排序:将LayoutTemplate中的表头用代替,其中CommandArgument的值为排序字段。只要是Comman 阅读全文

posted @ 2013-07-03 14:32 天上星 阅读(485) 评论(0) 推荐(0) 编辑

7.DropDownList的绑定
摘要:ListView中是无法像TextBox等控件那样将DropDownList的选中值绑定到数据字段的,必须编程处理。如例子:人员的性别(男,女,保密),三个值固定写在DropDownList中。在显示数据的时候DropDownList显示数据的值,在ItemTemplate中加入DropDownList,设定DropDownList的Enabled='false',这样就是只读的。在ItemDataBound事件中e.Item.FindControl()来找到DropDownList控件,然后ListViewDataItem lvDataItem=(ListViewDataIt 阅读全文

posted @ 2013-07-03 14:13 天上星 阅读(174) 评论(0) 推荐(0) 编辑

6.ListView
摘要:Repeater一般只用来展示数据,如果要增删改则用ListView更方便,使用向导(强类型数据)来使用ListView会自动生成很多模板,免去手写模板代码的麻烦,再进行手工调整即可。首先设定数据源,然后点击智能提示中的“配置ListView”,选择一种布局和样式,然后根据需要勾选“启用编辑”、"启用删除”、“启用插入”、“启用分页”,就会自动生成常用的模板,注意,这只是提高效率的一个方式并不 是唯一选择。LayoutTemplate为布局模板,布局模板中必须有一个ID为itemPlaceholder的服务端控件(4.0后不需要).什么类型无所谓,不会被显示,itemPlacehol 阅读全文

posted @ 2013-07-03 13:50 天上星 阅读(511) 评论(0) 推荐(0) 编辑

5. repeater图片放大
摘要:当把鼠标放在一张小图片上时,图片会自动放大,离开时它变小。我们在静态页面中可以用jQuery来操作。如下为html中的源码。 截图: 在用repeater显示数据库中的图片时,我们也可以用jquery方法把鼠标移动到图片上放大 。基本的操作方式和上例中的连接数据库是一样的,此处省略操作步骤。这里面有两个Repeater,一个为当鼠标在图片上移动时显示人的名称,另一个为自动放大图片。它的源码为: ... 阅读全文

posted @ 2013-07-02 17:09 天上星 阅读(435) 评论(0) 推荐(0) 编辑

4. Repeater 实例2
摘要:设计管理一个用户程序,对用户的状态进行管理,当用户状态是启用时整行显示红色。设计思路:用Repeater遍历每行记录,在操作状态的表格中旋转两个按钮,一个为启用功能,另一个为禁用功能,根据Repeater 的itemDataBind和itemCommand事件来控制即可。操作步骤: 1.建立数据表T_Stauts,建立三个字段:自增ID,用户名及用户状态(bit类型)。启用时值为true(1),禁用时为false(0) 2.建立强类型数据集(拖动T_Status表到数据集的表单上).添加两个功能语句:禁用功能(DisnableStatusById)UPDATE T_Status set sta 阅读全文

posted @ 2013-07-02 17:00 天上星 阅读(351) 评论(0) 推荐(0) 编辑

3.Repeater 绑定数据例子
摘要:此例子绑定的数据源为微软在mssql2000中提供的Northwind数据库中的表Categories。以下为设计步骤:在C# 中连接数据库。如下图:在项目中添加新建项,建立一个数据集,并把Categories从服务器资源列表中拖到这个数据集模板中并点击菜单“生成-生成解决方案”,如下图:在aspx的webform上放一个ObjectDataSource控件,设定它的TypeName为刚刚建立的数据集类型,用它的向导建立即可。在aspx的webform上放一个Repeater控件,用它的向导设定它的DataSourceID为上面的ObjectDataSource在网页中设定它的源码,即加上等模 阅读全文

posted @ 2013-07-02 11:53 天上星 阅读(681) 评论(0) 推荐(0) 编辑

2.数据显示控件的一些事件
摘要:ItemDataBound事件: 对于每行数据显示的时候都会调用ItemDataBound事件,在这个事件中可以对当前行进行处理,事件对象主要成员: 1. e.Item.ItemType为当前行的类型,item为ItemTemplate行、AlternatingItem为AlternatingItemTemplate行,还有Header、Footer等取值. 2.ItemIndex为当前行的序号 3.DataItem是当前行绑定的对象 如果要在ItemDataBound事件中对ItemTemplate模板中的控件做处理,则必须使用runat=server的Asp.net控件或者HTML控件,为 阅读全文

posted @ 2013-07-02 11:36 天上星 阅读(238) 评论(0) 推荐(0) 编辑

1.Repeater控件
摘要:在用到数据库数据并且要逐条显示时,就需要用到repeater\listview等这样的数据库控件进行动态的显示数据。Repeater相当于foreach的功能,用于对绑定数据源中的数据进行遍历显示,每条数据以什么样的格式显示是由它的来决定的,模板会多次显示中的内容,直到遍历完成。表示在这个位置显示当前行的Name字段。调用Eval\Bind这些数据绑定方法的时候要用#. Eval()是只读的,即把数据库中的数据读取到显示的控件中显示出来,是单向的。Bind()是可读写的,即可以把数据从数据库中读取到显示的控件,也可以把控件中的值写入到数据库中,是双向的。因为Eval就是将属性显示到指定的位置, 阅读全文

posted @ 2013-07-02 09:45 天上星 阅读(318) 评论(0) 推荐(0) 编辑

< 2025年3月 >
23 24 25 26 27 28 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

导航

统计

点击右上角即可分享
微信分享提示