摘要:
第一章、Asp.net中服务端控件事件是如何触发的Asp.net 中在客户端触发服务端事件分为两种情况: 一. WebControls中的Button 和HtmlControls中的Type为submit的HtmlInputButton 这两种按钮最终到客户端的表现形式为: ,这是Form表单的提交按钮,点击以后会作为参数发送到服务端,参数是这样的: 控件的name属性=控件的value值,对应上面的例子就是:Submit1= Submit。 服务端会根据接收到的控件的name属性的这个key来得知是这个按钮被点击了,从而在服务端触发这个按钮的点击事件。 二. Htm... 阅读全文
摘要:
关于NPOINPOI是POI项目的.NET版本,是由@Tony Qu(http://tonyqus.cnblogs.com/)等大侠基于POI开发的,可以从http://npoi.codeplex.com/下载到它的最新版本。它不使用Office COM组件(Microsoft.Office.Interop.XXX.dll),不需要安装Microsoft Office,支持对Office 97-2003的文件格式,功能比较强大。更详细的说明请看作者的博客或官方网站。它的以下一些特性让我相当喜欢:支持对标准的Excel读写支持对流(Stream)的读写 (而Jet OLEDB和Office CO 阅读全文
摘要:
VS2010如何调试IIS上的网站通常,我们在Visual Studio里调试ASP.NET网站,都是加个断点,然后按F5,在VS自带的虚拟服务器下调试的。但有时候,VS自带的服务器弱爆了,无法满足一些特定情况的要求,我们必须把网站放在IIS里跑。这下该怎么调试呢?其实很简单, 首先还是和原来一样,加上断点。但不要按F5了。选择工具菜单(调试菜单也可以),附加到进程。然后会惊现一个对话框,勾选最下面的两个复选框:显示所有用户进程、显示所有会话中的进程。然后选择IIS进程,即w3wp.exe。最后点击"附加"。现在打开你的浏览器,访问IIS中的网站,并触发要调试的程序。小卡一 阅读全文
摘要:
在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库。而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求管理员每天守到晚上1点去备份数据库。要实现数据库的定时自动备份,最常用的方式就是使用SQL Server代理中的作业。启动SQL Server Agent服务,然后在其中新建作业,作业中添加1个备份步骤,类型是T-SQL脚本,然后在命令中输入如下SQL语句,该语句实现了对数据库TestDB1的完整备份,备份文件在C盘Backup文件夹中,文件名就是TestDB1+当时备份的日期字符串.bak。Code highlighting produced b 阅读全文
摘要:
下面是我已经证实可用的自动备份的方法. 1、打开企业管理器->管理->sql server代理 2、新建一个作业,作业名称随便取,例如:data备份,所有者选择sa,当然你也可以选择其他用户,前提是该用户有执行作业的权限; 3、点击步骤标签,进入步骤面板.新建步骤,步骤名可以随便填写,如步骤1,类型和数据库默认,不需要修改.命令中写入以下语句:BACKUP DATABASE [数据库名] TO DISK = N'F:\\databack\\firenews备份' WITH NOINIT , NOUNLOAD , NAME = N'firenews备份' 阅读全文
摘要:
可能许多同学对SQL Server的备份和还原有一些了解,也可能经常使用备份和还原功能,我相信除DBA之外我们大部分开发员队伍对备份和还原只使用最基础的功能,对它也只有一个大概的认识,如果对它有更深入的认识,了解它更全面的功能岂不是更好,到用时会得心应手。因为经常有中小型客户公司管理人员对数据库不了解或掌握不牢,会请我们技术人员出马找回丢失的数据或硬件损坏移动数据的现象,或其它情况的发生。 首先从数据库【恢复模式】说起,因为数据库如果恢复模式设置不正确,会导致数据无法还原。 SQL Server 2012对数据库备份和还原与SQL Server 2008基本没有太大变化,仅对还原时间点选择UI 阅读全文
摘要:
我们经常会遇到对时间进行转换,达到不同的显示效果,默认格式为:2006-6-6 14:33:34 如果要换成成200606,06-2006,2006-6-6或更多的格式该怎么办呢?这里将要用到:DateTime.ToString的方法(String, IFormatProvider)示例:using System;using System.Globalization;String format="D";DateTime date=DataTime.Now;Response.Write(date.ToString(format, DateTimeFormatInfo.Inva 阅读全文
摘要:
5.2LINQ to DataSet实现复杂数据查询LINQ to DataSet将LINQ和ADO.NET集成,它通过ADO.NET获取数据,然后通过LINQ进行数据查询,从而实现对数据集进行非常复杂查询。本节将介绍如何使用LINQ to DataSet操作数据集DataSet中的数据。5.2.1使用LINQ to DataSetLINQ to DataSet可以简单理解成通过LINQ对DataSet中保存的数据进行查询,它和第7章介绍的LINQ查询并没有太大的区别。LINQ to DataSet的使用通常包含以下步骤:(1)获取DataSet/DataTable数据源。LINQ to Da 阅读全文
摘要:
以下都以ASP.NET开发网站为例。1、sql注入漏洞。解决办法:使用存储过程,参数不要用字符串拼接。简单改进办法:使用SqlHelper和OledbHelper2、跨站脚本漏洞解决办法:“默认禁止,显式允许”的策略。具体参考:从客户端检测到有潜在危险的Request.Form值,禁止提交html标记(<>等被转义成<)3、上传漏洞解决办法:禁止上传目录的运行权限。只给读取权限。另外要禁止上传非法类型文件。不仅仅是aspx类型,包括很多,甚至htm、html类型文件也不应该直接上传保存。4、数据库连接帐号,尽量使用最低权限的帐号。一定不要给管理员权限。假如被黑客得知了数据库的 阅读全文
摘要:
1:SQL 注入2:XSS3:CSRF4:文件上传1:SQL 注入引起原因:其实现在很多网站中都存在这种问题。就是程序中直接进行SQL语句拼接。可能有些读者不太明白。下面通过一个登录时对用户验证来说明:code: 验证时的sql语句: select * from where user='"+txtUsername.Text+"' and pwd='"+txtPwd.Text+"'这是一段从数据库中查询用户,对用户名,密码验证。看上去好象没有什么问题,但是实际这里面浅藏着问题,用户名:admin 密码: admin, sel 阅读全文