C#
kennygu
这个作者很懒,什么都没留下…
展开
-
JQUERY+ASP.NET的AJAX文件上传
JQUERY+ASP.NET的AJAX文件上传2009/04/24 23:31<br /> <br />在知道JQUREY和微软集成的消息后,在项目里面就开始尽量使用JQUERY了,这个DEMO是一个示例。主要文件两个:<br />ajaxUpFile.ashx 服务端处理<br />Default.aspx 用户提交<br />下面贴出主要代码:<br />JS部分代码如下<br />function TestUp()<br /> {<br /> ajaxFileUpl原创 2011-03-05 20:24:00 · 2812 阅读 · 0 评论 -
IHttpHandler的用法:资源下载,防盗链!
大家查看一个msdn,可以看到它的声明如下:Visual Basic(声明) Sub ProcessRequest ( _ context As HttpContext _)Visual Basic(用法) Dim instance As IHttpHandlerDim context As HttpContextinstance.Proces转载 2012-02-28 18:35:47 · 782 阅读 · 0 评论 -
ASP.NET之基础概念——HttpHandler
概述HttpHandler是一个HTTP请求的真正处理中心,也正是在这个HttpHandler容器中,ASP.NET Framework才真正地对客户端请求的服务器页面做出编译和执行,并将处理过后的信息附加在HTTP请求信息流中再次返回到HttpModule中。IHttpHandler是什么IHttpHandler定义了如果要实现一个HTTP请求的处理所必需实现的一些系统约定。Http原创 2012-02-28 17:57:30 · 491 阅读 · 0 评论 -
IHttpHandler的用法:给图片添加水印
先给大家看几张熟悉的图片:上面这些图片大家不熟悉,不过如果大家留心一下就会发现每张图片上都有一些有关网站的信息,只不过第一张和第二张使用的是图片,第三张就是"life.netskycn.com"文字而已,这就是所谓的图片水印技术,它一般都是在原有图片上添加一些自己的标记(一般是网站网址),这样如果别的网站直接链接使用的话,则不可避免带上了自己网站的信息,相当于给自己网站做了广告转载 2012-02-28 18:19:29 · 769 阅读 · 0 评论 -
asp.net网站的性能优化
本篇主要讲述在ASP.NET中如何提高程序性能。提高程序性能的方法主要从编码和数据操作及优化配置三方面,本章要讲述的知识点有:l 程序编码优化l 数据操作优化l 配置优化l 总结21.1 程序编码优化从编码方面提高程序性能的方法主要涉及到集合操作、字符串连接、类型转换等。21.1.1 集合操作在.NET Framework中提供了很多集合类,如ArrayLi转载 2012-02-28 19:27:49 · 1394 阅读 · 0 评论 -
Mime类型与文件后缀对照表及探测文件MIME的方法
估计很多朋友对不同后缀的文件对应的MIME类型不熟悉(实际上这么多我也记不住),所以将平常常见的一些文件后缀对应的MIME类型写了一个对照表,现在奉献给大家:文件后缀MIME备注*.avivideo/x-msvideo视频文件*.aif *.aiff *.aifcaudio/转载 2012-02-28 19:01:07 · 678 阅读 · 0 评论 -
.NET相关的面试题
以前一直是被别人面试,后来“多年的媳妇熬成婆”,走上技术管理岗位之后也面试过别人。对于面试我始终认为有些技巧的,想要在短短半个小时到一两个小时内了解候选人是否满足岗位需要,确实不太容易。我一般会根据面试者的工作经验状况选择相应的面试形式。对于工作经验较少的面试者(两年及以下)偏向于做题或者实际上机操作为主,因为这样的面试者进来之后也是做一些初级的工作,能够熟练操作软件和了解一些基本常识就够了;转载 2012-02-28 19:30:04 · 830 阅读 · 0 评论 -
JavaScript及C# URI编码详解
混乱的URI编码 JavaScript中编码有三种方法:escape、encodeURI、encodeURIComponent C#中编码主要方法:HttpUtility.UrlEncode、Server.UrlEncode、Uri.EscapeUriString、Uri.EscapeDataString JavaScript中的还好,只提供了三个,C#中主要用的就有这么多,还没原创 2012-04-03 14:15:42 · 1043 阅读 · 0 评论 -
ASP.NTE 对XML文档进行增删改查操作
关于对XML文档进行增删改查操作:已知有一个XML文件(bookstore.xml)如下:Oberon’s LegacyCorets, Eva5.951、往节点中插入一个节点:XmlDocument xmlDoc=new XmlDocument();xmlDoc.Load("bookstore.xml");XmlNode root=xmlDo原创 2012-04-03 10:12:19 · 504 阅读 · 0 评论 -
为什么不要 "lock(this)" ? lock object 并是readonly
一. 为什么要lock,lock了什么?当我们使用线程的时候,效率最高的方式当然是异步,即各个线程同时运行,其间不相互依赖和等待。但当不同的线程都需要访问某个资源的时候,就需要同步机制了,也就是说当对同一个资源进行读写的时候,我们要使该资源在同一时刻只能被一个线程操作,以确保每个操作都是有效即时的,也即保证其操作的原子性。lock是C#中最常用的同步方式,格式为lock(objectA原创 2012-02-14 11:26:24 · 5279 阅读 · 0 评论 -
TextBox客户端JS赋值 后台获取
C# 后台(.cs)总是无法获得前台textbox的内容ReadOnly获取或设置一个值,用于指示能否更改 TextBox 控件的内容。重要事项: 发生回发时,TextBox 控件(其 ReadOnly 属性设置为 true)的 Text 值被发送到服务器,但是服务器不处理只读文本框。这样可以防止恶意用户更改只读的 Text 值。在回发之间,Text 属性的值保留在视图状态中,除非原创 2012-02-07 08:55:05 · 1603 阅读 · 0 评论 -
JQuery ajax调用asp.net的webMethod
在vs2010中,用JQuery ajax调用asp.net 2.0的 webMethod 方法时,怎么都调不出来,原来和3.5 有点出入。3.5中,无需特殊设置,可以直接用$.ajax调用在aspx.cs中,访问级别public,静态的,标记为【webmethod】的方法。aspx.cs:using System.Web.Services;[WebMethod]public static string PollCount(){ …… return getResultHTML(原创 2011-03-09 18:35:00 · 3925 阅读 · 0 评论 -
回发或回调参数无效。在配置中使用
回发或回调参数无效。在配置中使用 或在页面中使用 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。这两天写程序总是遇到相似的程序在不同页面,出现不一样的结果。以下是今天出现的问题:回发或回调参数无效。在配置中使用 或在页面中使用 启用了事件验证。出于安全目的,此功能验证回原创 2011-04-29 09:40:00 · 683 阅读 · 0 评论 -
C#.NET Request相关操作
using System;using System.Web;using System.Text;namespace Pub.Class{ /// /// Requests操作类 /// public class Request2 { #r原创 2011-07-27 14:47:22 · 975 阅读 · 2 评论 -
DataRelation(DataSet中父子表)的一个示例
System.Data.DataRelation 类,表示两个 DataTable 对象之间的父/子关系。在常见的查询中,可以利用sql2005/2008的CTE应用来进行递归查询,这里有一个典型示例:http://www.cnblogs.com/downmoon/arc转载 2011-09-16 15:28:46 · 2499 阅读 · 0 评论 -
如何使用DotNet 2.0中的应用程序配置 Settings.settings
对于桌面应用程序,常常会需要记录一些用户配置信息,早期的做法一般是使用读写INI文件的办法。 对于.NET应用程序,并没有提供直接操作INI文件的类,需要调用Win32API,具体办法可以参考:http://www.blogcn.com/user52/seablue原创 2011-08-30 14:01:34 · 1074 阅读 · 0 评论 -
JSONP原理及最简单的JSONP实现
什么是JSONP协议?JSONP即JSON with Padding。由于同源策略的限制,XmlHttpRequest只允许请求当前源(域名、协议、端口)的资源。如果要进行跨域请求,我们可以通过使用html的script标记来进行跨域请求,并在响应中返回要执行的script代原创 2011-10-11 14:46:29 · 879 阅读 · 0 评论 -
DC.Web.HttpCompress (采用原作者最新版,修复2处Bug,增加缓存功能)
这几天做公司的网站访问速度优化,用到了一个老外写的DC.Web.HttpCompress压缩模块,但是悲催的是在百度上找的全是原作者的老版本,而且有各种问题,比如我从一位园友那里找到的一个版本在本机实验一点事情没有,但是发布到服务器上js,css文件压缩就失效了,百度了下确实也有人碰到这个问题,但是没人解答。。。。。。 我这个人一向爱刨根问底,我觉得热爱技术的人都应该是这样吧。于是我直接go转载 2011-12-20 19:55:19 · 3418 阅读 · 0 评论 -
优化:Sql注入和Html注入的黑帽SEO
黑帽(black hat)SEO主要是指采取“不怎么道德”(暂时就这么形容吧!)的方式进行搜索引擎优化。1. 注入攻击,包括Sql注入和Html注入。我经常能看到对Sql注入防范的谈论,但对于Html注入,很多人并没有引起足够的重视。为了展示Html注入的效果,我们模仿了一个常见的留言本功能。首先,在页面声明中添加两个属性设置EnableEventValidation=“false” Va原创 2012-04-17 22:52:19 · 2715 阅读 · 0 评论 -
Http环境下的保持连接方式
Http环境本身是一种无连接状态的架构,在这种架构下服务器只能是被动的接受客户端的请求,返回结果,而无法主动的给客户端发送数据。而在很多需要实时数据交互(比如Web IM)的场景中,我们却希望能及时得到服务器给我们返回的数据。此时,一种最为普遍的做法是:在客户端用定时器,定时去请求服务器的服务,来得到最新数据。而这样一来,很多时候却是在做无用功,频繁的请求也会无端的增加服务器和客户端在请求Web服原创 2012-07-19 18:56:53 · 864 阅读 · 0 评论 -
ASP.NET获取客户端IP及MAC地址---测试通过
获取客户端IP:private string GetClientIP() { string result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (null == result || result == String.Empty) { result原创 2012-08-22 16:10:35 · 1353 阅读 · 0 评论 -
C#利用QrCode.Net生成二维码(Qr码)
现在网上很多应用都是用二维码来分享网址或者其它的信息。尤其在移动领域,二维码更是有很大的应用场景。因为项目的需要,需要在网站中增加一个生成 二维码分析网址的功能,在谷歌大幅度抽筋的情况下无奈使用百度。百度N多,找到一些项目,但是可用性不强。(有一个项目是用VS2005开发的,在 2010中调试不开。)终于在codeplex上找到一个“神器”,这个“神器”可以很方便的生成二维码,速度那是相当的快,并转载 2014-12-01 22:50:50 · 4496 阅读 · 0 评论 -
Redis与Memcached的比较
这两年Redis火得可以,Redis也常常被当作Memcached的挑战者被提到桌面上来。关于Redis与Memcached的比较更是比比皆是。然而,Redis真的在功能、性能以及内存使用效率上都超越了Memcached吗?下面内容来自Redis作者在stackoverflow上的一个回答,对应的问题是《Is memcached a dinosaur in comparison to Re转载 2014-12-02 16:36:56 · 606 阅读 · 0 评论 -
使用NuGet发布自己的类库包(Library Package)
NuGet是一个为大家所熟知的Visual Studio扩展,通过这个扩展,开发人员可以非常方便地在Visual Studio中安装或更新项目中所需要的第三方组件,同时也可以通过NuGet来安装一些Visual Studio的插件等。作为一名开发人员,您可能也会开发一些公共组件以供他人使用,本文将一步步介绍如何以最简单的方式将自己所开发的类库包发布到nuget上,以供更多的人使用。背景转载 2014-12-04 15:18:38 · 13007 阅读 · 3 评论 -
IQueryable与IEnumberable的区别
转自 http://www.cnblogs.com/fly_dragon/archive/2011/02/21/1959933.htmlIEnumerable接口公开枚举器,该枚举器支持在指定类型的集合上进行简单迭代。也就是说:实现了此接口的object,就可以直接使用foreach遍历此object;IQueryable 接口它继承 IEnumerable 接口,而因为.转载 2015-01-19 16:20:43 · 579 阅读 · 0 评论 -
基于Attribute的Web API路由设置
路由对于MVC应用程序来说都是至关重要的一个部门,不管是asp.net mvc或者Ruby on Rails(当然还有其它的,我只熟悉这两个:) ) asp.net mvc自带的路由配置是在Global.asax文件中,这里给大家介绍一个基于属性的路由配置工具:AttributeRouting,它不仅可以适用于ASP.NET MVC也适用于ASP.NET Web API项目。我们以A转载 2015-01-03 22:57:31 · 832 阅读 · 0 评论 -
WCF宿主与服务托管
若要公开WCF服务,需要提供一个运行服务的宿主环境。就像.NET CLR需要创建宿主环境以托管代码一般,WCF的宿主环境同样运行在进程的应用程序域中。在应用程序域中可以创建一个或多个ServiceHost实例,其关系如图一所示: 图一 托管ServiceHostWCF并不推荐在应用程序域中创建多个ServiceHost实例。如果要托管多个服务,完全可以在一个宿主中通过多个转载 2015-04-02 10:55:56 · 716 阅读 · 0 评论 -
TransferResult处理中用MvcHttpHandler在mvc3和mvc5区别
“System.InvalidOperationException”类型的异常在 System.Web.dll 中发生,但未在用户代码中进行处理其他信息: 只能在引发“HttpApplication.AcquireRequestState”之前调用“HttpContext.SetSessionStateBehavior”。/// ///原创 2015-08-21 16:03:04 · 1626 阅读 · 0 评论 -
HTTP 错误 500.22 - Internal Server Error
HTTP 错误 500.22 - Internal Server Error检测到在集成的托管管道模式下不适用的 ASP.NET 设置。最可能的原因:此应用程序在 system.web/httpModules 节中定义配置。 可尝试的操作:将配置迁移到 system.webServer/modules 节。也可以手动这样做,或通过在命令原创 2016-04-01 14:14:41 · 5569 阅读 · 0 评论 -
TFS下的源代码控制
以下主要描述了: TFS源代码控制系统的基本场景如何把一个项目添加到源代码管理中如何与服务器同步如何做Check-In如何做分支与合并什么是上架与下架我们知道工作项是项目管理的基本元素,但是一个项目的成功,光有工作项还是不够的。工作项说明了要做什么事(例如任务),出了什么问题(例如Bug),除此之外,我们还需要将程序一行一行地写出来,TFS的源代码管理控制系统,就能帮助我们管理转载 2014-11-25 11:03:21 · 3703 阅读 · 0 评论 -
微软源代码管理工具TFS2013安装与使用详细图文教程(Vs2013)
这篇文章联合软件小编主要介绍了微软源代码管理工具TFS2013安装与使用图文教程,本文详细的给出了TFS2013的安装配置过程、使用教程,需要的朋友可以参考下最近公司新开发一个项目要用微软的TFS2013进行项目的源代码管理,以前只是用过SVN,从来没有用过TFS,所以在网上百度、谷歌了好一阵子来查看怎么安装和配置,还好花了一天时间总算是初步的搞定了,下面就简单介绍一下安装和配置过程。转载 2014-11-24 17:19:15 · 51651 阅读 · 6 评论 -
Datatable的Select()方法简介
DataTable是我们在进行开发时经常用到的一个类,并且经常需要对DataTable中的数据进行筛选等操作,下面就介绍一下Datatable中经常用到的一个方法——Select,微软提供了四个函数的重载,分别是Select()Select(string filterExpression)Select(string filterExpression, string sort)原创 2013-05-04 14:24:35 · 748 阅读 · 0 评论 -
无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查 HKE
无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet转载 2011-09-26 09:38:17 · 13524 阅读 · 3 评论 -
用System.Attribute扩展元数据
本文以一个项目中通用的验证类来举例说明如何使用自定义Attribute来扩展元数据。 在项目中,我们为了保证各个层次之间的松藕合,通常把在各个层次之间传递数据的封装在一个称为实体类的类中,比如ActionFromusing System;namespace AttributeTest{ public class ActionForm { priv转载 2014-07-09 17:20:38 · 722 阅读 · 0 评论 -
对象的解剖(Key,Description,Serializable序列化,继承)
using Kenny.Framework.Tool.Entity;using System.ComponentModel.DataAnnotations;namespace UUWebMvc.Domain.Models.Systeam{ public class W_Member : EntityBase { [Key]原创 2014-07-09 17:08:16 · 1036 阅读 · 0 评论 -
IQueryable与IList差别之处
IList(IList)会立即在内存里创建持久数据,这就没有实现“延期执行(deferred execution)”,如果被加载的实体有关联实体(associations),此关联实体不会被加载(既不立即加载,也不延迟加载)。IQeurable(IQuerable)不会立即在内存里创建持久数据,只有遍历它(如通过foreach)、把它转换成List等情况下才会向内存加载数据,它可以原创 2014-09-23 10:02:48 · 2923 阅读 · 0 评论 -
IQueryable与IEnumberable的区别
IEnumerable接口公开枚举器,该枚举器支持在指定类型的集合上进行简单迭代。也就是说:实现了此接口的object,就可以直接使用foreach遍历此object;IQueryable 接口它继承 IEnumerable 接口,而因为.net版本加入Linq和IQueryable后,使得IEnumerable不再那么单调,变得更加强大和丰富。为了区别两个接口,我们通过一转载 2014-09-23 10:04:16 · 3739 阅读 · 0 评论 -
C#扩展方法的使用方法和理解
下面的示例演示为 System.String 类定义的一个扩展方法。请注意,它是在非嵌套的、非泛型静态类内部定义的namespace ExtensionMethods{ public static class MyExtensions { public static int WordCount(this String str)转载 2014-09-24 18:10:26 · 628 阅读 · 0 评论 -
关于IOC和DI的理解
IOC:Inversion of Control 控制反转DI:Dependency Injection 依赖注入控制反转,从字面意思来看,就是控制权又被动变主动,最后又变回被动。举个例子:你的主管要求你做一件事情,这个时候就存在这么几个过程, 主管命令你做事情(这个时候主动权在主管,你是被动的)你接到命令做事情(这个时候主题是你,你是主动的,控制权转载 2014-11-04 11:36:44 · 742 阅读 · 0 评论 -
nuget push XXX.1.0.0.0.nupkg 出现403错误(Failed to process request)
Failed to process request. 'The specified API key is invalid, has expired, or does not have permission to access the specified package.'.远程服务器返回错误: (403) 已禁止。.解决方法: 1.可能是包重名了。。。。 2.原创 2017-09-27 14:17:06 · 1337 阅读 · 0 评论