在提交表单时候,asp.net 提示:"从客户端(......)中检测到有潜在危险的Request.Form值"。asp.net中的请求验证特性提供了某一等级的保护措施防止XSS攻击,asp.net的请求验证是默认启动的。这个给出各个版本.net的解决方法。asp.net2.0通常解决办法方案一:将.aspx文件中的page项添加ValidateRequest="false",如下:<%@ Page ValidateRequest="false" Language="C#"&nbs...
继续阅读 >
分类目录归档:全部列表
2014
12-02
12-02
.Net 垃圾回收和大对象处理
CLR垃圾回收器根据所占空间大小划分对象。大对象和小对象的处理方式有很大区别。比如内存碎片整理——在内存中移动大对象的成本是昂贵的,让我们研究一下垃圾回收器是如何处理大对象的,大对象对程序性能有哪些潜在的影响。大对象堆和垃圾回收在.Net1.0和2.0中,如果一个对象的大小超过85000byte,就认为这是一个大对象。这个数字是根据性能优化的经验得到的。当一个对象申请内存大小达到这个阀值,它...
继续阅读 >
2014
12-02
12-02
检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法
我们将ASP.NET程序从IIS6移植到IIS7,可能运行提示以下错误:HTTP错误500.23-InternalServerError检测到在集成的托管管道模式下不适用的ASP.NET设置。为什么会出现以上错误?在IIS7的应用程序池有两种模式,一种是“集成模式”,一种是“经典模式”。经典模式则是我们以前习惯的IIS6的方式。如果使用集成模式,那么对自定义的httpModules和httpHandlers...
继续阅读 >
2014
12-02
12-02
C# 的三种序列化方法
序列化是将一个对象转换成字节流以达到将其长期保存在内存、数据库或文件中的处理过程。它的主要目的是保存对象的状态以便以后需要的时候使用。与其相反的过程叫做反序列化。序列化一个对象为了序列化一个对象,我们需要一个被序列化的对象,一个容纳被序列化了的对象的(字节)流和一个格式化器。进行序列化之前我们先看看System.Runtime.Serialization名字空间。ISerializable接口允许我们使任何类成为可序列化的...
继续阅读 >
2014
12-02
12-02
11个强大的Visual Studio调试小技巧
简介调试是软件开发周期中很重要的一部分。它具有挑战性,同时也很让人疑惑和烦恼。总的来说,对于稍大一点的程序,调试是不可避免的。最近几年,调试工具的发展让很多调试任务变的越来越简单和省时。这篇文章总结了可能节省你大量时间的十个visualstudio的调试技巧和方法。1悬停鼠标查看表达式值调试是很有挑战性的。比如在函数内逐步运行可以看出哪里出错,查看堆栈信息可以知道函数被谁调用等等。...
继续阅读 >
2014
12-02
12-02
用ASP.net判断上传文件类型的三种方法
一、安全性比较低,把文本文件1.txt改成1.jpg照样可以上传,但其实现方法容易理解,实现也简单,所以网上很多还是采取这种方法。BooleanfileOk=false;stringpath=Server.MapPath("~/images/");//判断是否已经选取文件if(FileUpload1.HasFile){//取得文件的扩展名,并转换成小写stringfileExtension=System.IO.Path.GetExtensio...
继续阅读 >
2014
12-02
12-02
不用IDE写C#的Hello World
用VisualStudio等IDE写C#的HelloWorld非常简单,但脱离了IDE你能不能打印出HelloWorld呢?这不是说工作时脱离IDE,而是学习一下CLR的执行模型.HelloWorld1、新建一个记事本,输入如下代码,另存为HelloWorld.txt。usingSystem;namespaceHelloWorld{classProgram{staticvoidMain(string[]args){Console.WriteLine("HelloWorld!");Console.ReadKey();}}}...
继续阅读 >
2014
12-02
12-02
不修改代码优化ASP.NET网站性能的一些方法
本文将介绍一些方法用于优化ASP.NET网站性能,这些方法都是不需要修改程序代码的。它们主要分为二个方面:1.利用ASP.NET自身的扩展性进行优化。2.优化IIS设置。配置OutputCache用缓存来优化网站性能的方法,估计是无人不知的。ASP.NET提供了HttpRuntime.Cache对象来缓存数据,也提供了OutputCache指令来缓存整个页面输出。虽然OutputCache指令使用起来更方便,也有非常好的效果,不过,它需要我们在那些页面中添加...
继续阅读 >
2014
12-02
12-02
Visual Studio 2014 和 ASP.NET 预览
VS2013预览版在2013的TechEd大会由BrainHarry正式发布。这次发布包括了一系列的新特性:工程模板、Scaffolding升级和Web工具。当你在VS2013创建一个新工程的时候,在新的工程对话框中,你会发现Web类型下只有一个入口。你仍然会看到一个可以PortableClassLibrary入口,但是在正式的发行版本中将会去掉。选择ASP.NETWeb应用并且点击确定。下一步将会提示你选择模板,如下图所示选择一个web表单模板,然后选...
继续阅读 >
2014
12-02
12-02
一步步教你读懂NET中IL(附详细图)
接触NET也有1年左右的时间了,NET的内部如何实现对我产生了很大的吸引力,在msdn上找到一篇关于NET的IL代码的图解说明,写的挺不错的,在此基础上加上个人的理解,每一个步骤都附带图解说明,如果你以前对NET中IL感觉晦涩难懂,头昏脑涨的时候,没关系,我相信这篇文章能让你们对IL有一个比较详细的理解,如果还不能帮助您,我也只能表示抱歉,因为这篇文章算比较详细的了。个人觉得:能对这些底部的代码是如何实现的进行了解...
继续阅读 >
2014
12-02
12-02
Visual Studio原生开发的10个调试技巧(一)
最近碰巧读了IvanShcherbakov写的一篇文章,《11个强大的VisualStudio调试小技巧》。这篇文章只介绍了一些有关VisualStudio的基本调试技巧,但是还有其他一些同样有用的技巧。我整理了一些VisualStudio(至少在VS2008下)原生开发的调试技巧。(如果你是工作在托管代码下,调试器会有更多的特性,在CodeProject中有介绍它们的文章),下面是我的整理的一些技巧:异常中断|BreakonExceptionWatch窗口中的伪变量...
继续阅读 >
2014
12-02
12-02
Visual Studio原生开发的10个调试技巧(二)
我以前关于VisualStudio调试技巧的文章引起了大家很大的兴趣,以至于我决定分享更多调试的知识。以下的列表中你可以看到写原生开发的调试技巧(接着以前的文章来编号)。这些技巧可以应用在VS2005或者更新版本中(当然有一些可以适用于旧版本)。如果你继续,你可以知道每个技巧的详细信息。数据断点线程重命名特定进程中断大概执行时间数字格式化内存数据格式化系统DLL中断装载符号表MFC中内存...
继续阅读 >
2014
12-02
12-02
ASP.NET MVC 5改进了基于过滤器的身份验证
ASP.NETMVC5包含在最近发布的VisualStudio2013开发者预览版中,它使开发人员可以应用身份验证过滤器,它们提供了使用各种第三方供应商或自定义的身份验证提供程序进行用户身份验证的能力。不过,这些过滤器要在调用授权过滤器之前应用。为了创建身份验证过滤器,开发人员需要新建一个C#ASP.NET工程,并且从列出的工程类型中选择MVC。来自Kunz,Leigh&Associates公司的高级软件开发工程师EricVogel已经测试了身份验证...
继续阅读 >
2014
12-02
12-02
高效的使用 Response.Redirect
介绍:我正在评估一个ASP.NETWeb项目应用。它有一些可扩展性问题。意味着当网站访问量增加的时候。系统将会变得缓慢。当我查看应用日志。我找到了大量的 ThreadAbortException.这个应用大量的使用了 Response.Redirect (是的endResponse=true),这个就是可扩展性问题的根源。通过endResponse=false 在Response.Redirect将会解决这个问题.但这样做会导致应用程序出现一些奇怪的问题。因为应用...
继续阅读 >
2014
12-02
12-02
.NET Framework 4.5 五个很棒的特性
简介自.NET 4.5发布已经过了差不多1年了。但是随着最近微软大多数的发布,与.NET开发者交流的问题显示,开发者仅知道一到两个特性,其他的特性仅仅停留在MSDN并以简单的文档形式存在着。比如说,当你问一个.NET开发者.NET框架内核中有什么新东西的时候,他们中的大多数仅仅会说异步与等待(至少和我交谈的人们仅仅谈到了这些特性)。另外也很难贯通所有的新特性。因为这些特性可能对于你目前正在开发的工...
继续阅读 >
微软VisualStudio2013andASP.NETMVC5新特性体验V3.0.微软特邀讲师徐雷亲自打造。讲解最新版.NET4.5.1新特性。MVC5、WebAPI2.0、SignalR2.0.系统了解.NET的新特性。视频下载地址:http://pan.baidu.com/share/link?shareid=3797994638&uk=1496476845
继续阅读 >
2014
12-02
12-02
C#的未来计划
在NDCLondon上,MadsTorgersen提出了对未来C#语言的的计划。需要注意的是,这些只是计划,不会保证在哪个版本发布。DamienGuard对这些建议进行了总结和简要的分析,我们在此为您挑选了其中的一些内容。只读属性只读自动属性将允许开发者在一行代码中声明属性及其后台字段。publicintX{get;}=x;静态类型using语句VisualBasic和Java都允许在命名空间中导入模块(C#静态类)。这样可以移除常用...
继续阅读 >
2014
12-02
12-02
7 个流行的.Net开发ORM映射工具
你是否是一个正在寻找不同的OR(对象关系)映射工具的NET开发人员吗?下面是一些为NET开发人员准备的流行OR映射工具。7PopularORMappingToolsfor.NETDevelopersTierDeveloperNHibernateLINQtoSQLSubSonicEntityFrameworkLightSpeedeXpressPersistantObjects
继续阅读 >
2014
12-02
12-02
C# 实现将 PDF 转文本的功能
更新2014年2月27日:这篇文章最初只描述使用PDFBox来解析PDF文件。现在它已经被扩展到包括使用IFilter和iTextSharp的例程了。这篇文章和对应的VisualStudio项目已经更新到目前最新的PDFBox版本(1.8.4)。可以从http://www.squarepdf.net/how-to-convert-pdf-to-text-in-net-sample-project/下载包含所有依赖内容的完整项目(要消除依赖关系有点棘手)。如何解析PDF文件在.NET中从PDF文件里提...
继续阅读 >
2014
12-02
12-02
将HTML转成XHTML并清除一些无用的标签和属性
介绍这是一个能帮你从HTML生成有效XHTML的经典库。它还提供对标签以及属性过滤的支持。你可以指定允许哪些标签和属性可在出现在输出中,而其他的标签过滤掉。你也可以使用这个库清理MicrosoftWord文档转化成HTML时生成的臃肿的HTML。你也在将HTML发布到博客网站前清理一下,否则像WordPress、b2evolution等博客引擎会拒绝的。它是如何工作的里面有两个类:HtmlReader和HtmlWriterHtmlReader拓展了著名的由C...
继续阅读 >
2014
12-02
12-02
.NET 的 WebSocket 开发包比较
编者按本文出现在第三方产品评论部分中。在这一部分的文章只提供给会员,不允许工具供应商用来以任何方式和形式来促销或宣传产品。请会员报告任何垃圾信息或广告。Web项目常常需要将数据尽可能快地推送给客户,必要时无需等待客户端请求。对于与用户之间进行实时通信的网站,例如在线交流或文档协作工具,或者在长期运行的计算/执行任务的服务器上更新系统状态,等等这些时候,采用双向沟通机制是理想的。以前,...
继续阅读 >
2014
12-02
12-02
一步步教你如何在 Visual Studio 2013 上使用 Github
介绍我承认越是能将事情变简单的工具我越会更多地使用它。尽管我已经知道了足够的命令来使用Github,但我宁愿它被集成到IDE中。在本教程中,我会告诉你使用VisualStudio2013如何实现。首先创建一个任意类型的项目。在我的例子中,我创建了一个新的WindowsPhone8应用。重述一遍,这无关紧要。按如下显示选择“文件”>“添加到源码控制”。你会看到一个在TFS和Git间选择的选项。选择&l...
继续阅读 >
2014
12-02
12-02
使用Visual Studio 2012 开发 Html5 应用
VisualStudio一直以来是开发微软旗下应用的利器,只要是开发微软相关的应用无论是Windows程序,WPF,Asp.Net,WinRTSurface,WindowsPhone等微软旗下的应用都可以使用VisualStudio来开发。如果您已经非常习惯了VisualStudio的UI和操作,是不是有时候也想使用VisualStudio像DreamWeaver一样来开发纯浏览器的Html5的应用呢?后端您可以用Asp.Net,也可以使用非微软的技术如:RubyonRails或者Php等,但是前端浏览...
继续阅读 >
2014
12-02
12-02
C# 中的 == 和 equals()有什么区别?
如以下代码:intage=25;shortnewAge=25;Console.WriteLine(age==newAge);//trueConsole.WriteLine(newAge.Equals(age));//falseConsole.ReadLine();int和short为原始类型,但与“==”比较返回true,equals()比较返回false。为什么呢?Answers:简而言之:“equals()”相比“==”复杂。具体来说:原始类型覆盖(override)基类的object.Equals(obje...
继续阅读 >