asp.net 上传文件
    
            
摘要:文件上传实例 公司产品中一直是采用flash实现文件上传功能,但用户的需求多了以后遇到了越来越多难以解决的问题,最后试着用硕正提供的freeform、小型页面控件来解决。 硕正文件上传的实现途径有3、4种,由于公司产品发布的需要,就选择了其中的httpPost方案,其它的象ftp、Httpput尽管也是不错的选择,但需要另外建站,或涉及权限问题,恐怕最终用户的部署维护会吃不消。 httpPost方案还有一个非常好的优点,就是文件上传后是保存到文件还是保存到数据库,都很容易实现。 我们的需求以及最终实现了的功能特点在此先罗列一下: 1.支持多文件上传; 2.支持超过4G的大文件上传;...
        
阅读全文
 
            
        
        
            
    跨站脚本攻击(Cross‐Site Scripting (XSS))
    
            
摘要:跨站脚本攻击(Cross‐Site Scripting (XSS))跨站脚本攻击(Cross‐Site Scripting (XSS)) XSS(Cross Site Script)跨站脚本攻击。是指攻击者向被攻击Web 页面里插入恶意html代码,当用户浏览该页之时,嵌入其中的HTML代码会被执行,从而达到攻击的特殊目的。XSS和CSRF(Cross site request forgery)合称Web 杀手组合。黑客洞穿页面逻辑,使输入的内容被按照期望内容展示出来,从而达到欺骗或攻击用户的效果。常见的xss攻击类型有存储xss攻击和反射型xss攻击。存储型XSS(Stored XSS) 存
        
阅读全文
 
            
        
        
            
    Asp.Net在多线程环境下的状态存储问题
    
            
摘要:Asp.Net在多线程环境下的状态存储问题在应用开发中,我们经常需要设置一些上下文(Context)信息,这些上下文信息一般基于当前的会话(Session),比如当前登录用户的个人信息;或者基于当前方法调用栈,比如在同一个调用中涉及的多个层次之间数据。 在.Net中,常用的有以下三种方法来实现这个特性. HttpContext.Current.Session或HttpContext.Currnet.Items是大家使用的最多的方式. [ThreadStatic]方式可以存储单个线程的共享状态. System.Runtime.Remoting.Messaging.CallContext类则可以存
        
阅读全文
 
            
        
        
            
    工具条OutLookBar
    
            
摘要:工具条OutLookBar灰姑娘本身也有自已的优点,但是却可能因为外貌不讨人喜欢,要变成白雪公主却需要有很多勇气和决心去改变自已:有一颗善良的心讨人喜爱的外貌我这里讲的是一个工具条的蜕变过程,用”灰姑娘到白雪公主蜕变”这个比喻不知道是否合理?还恳请高人讨教。工具条控件提供了一种类似Outlook方式的导航菜单,用来切换各种业务窗口,用上这个控件,肯定为你的程序增色不少,这个工具条的优点是可以上下划动,很灵活,这个是我需要采用的;缺点是只能跟传统的系统界面进行匹配,提供外接设置的接口比较少,并且它没有任何的换肤功能, 如果用到具有换肤功能的系统中,它真变成了“土里土气的灰姑娘”。现状现在来看传统
        
阅读全文
 
            
        
        
            
    在Gridview控件中点击编辑链接,把这一行数据传给编辑界面进行修改
    
            
摘要:在Gridview控件中点击编辑链接,把这一行数据传给编辑界面进行修改前台设计部分截图如下:请看到上图“编辑”这一列,就是今天所说的内容。通过点击编辑链接,将GridView控件这一行的数据加载到编辑页面中,而后就可以进行您所需要的修改了。编辑列,前台代码示例如下:<asp:TemplateField HeaderText="编辑" runat="server"> <ItemTemplate> <asp:LinkButton ID="LinkButtonUpdat...
        
阅读全文
 
            
        
        
            
    .NET:栈的生长与消亡.
    
            
摘要:.NET:栈的生长与消亡背景多数情况下我们不需要关心栈的变化,不过个别场景下还是需要对此有所了解,如:指针操作,下文会给出一个具体的示例。另外,理解栈的变化对于理解作用域也有一定的好处,因为C#的局部变量作用域是基于栈的。栈的变化规则方法调用会导致栈的生长,具体包括两个步骤:一、插入方法返回地址(下图中的Fn:);二、将实际参数按值(可以使用ref或out修饰)拷贝并插入到栈中(可以使用虚参数访问)。遇到局部变量定义会向栈中插入局部变量。遇到return语句会导致栈消亡,一直消亡到方法返回地址,并把return的返回值设置到方法返回地址中。这里先不考虑中括号导致的栈的消亡。简单的示例最后的小测
        
阅读全文
 
            
        
        
            
    .NET:也谈谈.NET中的引用类型和值类型
    
            
摘要:.NET:也谈谈.NET中的引用类型和值类型背景引用类型和值类型的区别好像是一个经典的面试问题,也是一个非常基础的问题,今天试着写一下,一则为了以后新入职的毕业生学习,二则希望高手批评。几个事实值类型的局部变量始终分配在栈中,局部变量中存储的是值。引用类型的局部变量始终分配在栈中,局部变量中存储的是值地址(引用),地址指向的值(对象)分配在堆中。值类型的成员变量始终内敛存储在对象中(堆中),内敛存储的是值。引用类型的成员变量始终内敛存储在对象中(堆中),内敛存储的是值地址(引用),地址指向的值(对象)分配在堆中的另外一个区域。一个线程拥有一个栈(对于理解多线程编程非常有用)。线程之间共享一个堆
        
阅读全文
 
            
        
        
            
    ASP.NET Web API对OData的支持
    
            
摘要:ASP.NET Web API对OData的支持在SOA的世界中,最重要的一个概念就是契约(contract)。在云计算的世界中,有关通信的最重要的概念也是契约。XML具有强大对数据的描述能力,Atom格式和AtomPub都建立在XML之上,在Google和微软的推动下,也已经成为标准。但是,Atom/AtomPub和ODBC/OLEDB这样的真正数据交互协议相比较,还有着根本上的欠缺:缺乏数据类型的具体描述,降低了交互性能。缺乏对数据查询的控制能力,比如返回特定的数据集合的区间,或者说分页能力等等。微软基于EDM模型释出了:OData,这里也可以看出Entity Framework对于NHi
        
阅读全文
 
            
        
        
            
    .net 开发 配置文件的灵活使用
    
            
摘要:.net 开发 配置文件的灵活使用配置文件的编写代码:<?xml version="1.0" encoding="utf-8" ?><configuration> <configSections> <section name="spring" type="spring_test.springClass,spring_test"/> <section name="hellowChild_1" type="spring_test.IFa
        
阅读全文
 
            
        
        
            
    Mvc中常见错误简单总结
    
            
摘要:Mvc中常见错误简单总结一、修改实体类报错存储区更新、插入或删除语句影响到了意外的行数(0)。实体在加载后可能被修改或删除。刷新 ObjectStateManager 项。对于这个错误其实是由于表的主键没有赋值引起的,所以出现了“存储区更新、插入或删除语句影响到了意外的行数(0)”这句话。 如果是强类型view时如果不希望主键显示出来,建议可以这样做:@Html.HiddenFor(model=>model.DispatchID) 就是设置一个隐藏控件来存储主键。如果不是强类型的view,则可以手动给你创建的实体对象添加主键的值。二、一个实体对象不能由多个 IEntityChangeTr
        
阅读全文
 
            
        
        
            
    asp.net富文本提交
    
            
摘要:asp.net富文本提交(不使用2.0请求方式,不禁用页面检查)异常详细信息: System.Web.HttpRequestValidationException:从客户端中检测到有潜在危险的 Request.Form 值很熟悉有木有,相信只要做asp.net的得碰到过这个异常,但怎么解决呢?你会发现无论你是百度还是Google,解决方法都是validateRequest="false" ,以致于微软都实在看不过去了,在4.0中把XSS(跨站脚本攻击)给改成不能禁用了,可这并不能难倒咱们聪明的程序员,还可以在配置文件设置<httpRuntimerequestValid
        
阅读全文
 
            
        
        
            
    ASP.NET MVC4 +EF+ EasyUI实现 动态菜单
    
            
摘要:ASP.NET MVC4 +EF+ EasyUI实现 动态菜单这段时间没事,做了一个动态菜单的实现。有很多的地方想的不是很全,做的不够完善。欢迎大神们拍砖和指点!话不多说,进入正题:设计了一个数据库表:在设计的时候每一个菜单的子菜单最多能添加 99 个,子菜单编号根据父菜单编号拼接上同级子菜单的个数。这里因为要用到Easyui,一些子段是按照easyui属性设计的。EF使用的是数据库优先方式创建。贴上代码:1.HTML代码:View Code1 <style type="text/css"> 2 header { 3 height:60px; 4...
        
阅读全文
 
            
        
        
            
    ASP.net Web API综合示例
    
            
摘要:ASP.net Web API综合示例目录概述功能介绍程序结构服务器端介绍客户端介绍“契约”Web API设计规则并行写入冲突与时间戳身份验证详解Web API验证规则客户端MVVM简介Web.Config本DEMO的一些问题相关下载概述我之前写的一些关于ASP.net Web API的博客中,得到了一些朋友的反响,我一直也想整理下代码贴出来供大家参考,但后来发觉从整个项目工程中单独把一部分代码剥离出来还真是不容易,一转眼就把这个事情忘记了,最近终于下定决心弄一弄,于是才有了此文,本DEMO虽然不完美,但已经包括了我目前所掌握的全部的关于WEB API的相关技术,至于有哪些地方还需要改进的,我
        
阅读全文
 
            
        
        
            
    ASP.NET UserControl 通信
    
            
摘要:ASP.NET UserControl 通信最近在SharePoint2007中用到了WebPart通信技术,个人觉得2007版本里面的ConnectionConsumer和ConnectionProvider没有2010版本那么好用,于是换了一种思想去实现通信:WebPart容器中装一个UserControl控件,这样只要UserControl可以通信,就实现了WebPart之间通信。下面我就用ASP.NET的UserControl模拟SharePoint UserControl通信,两者的本质,思想和实现方式都不变。UserControl是用户自定义控件,我们可以在UserControl中
        
阅读全文
 
            
        
        
            
    Visual Studio 2010的网站局域网发布功能(Publish)
    
            
摘要:Visual Studio 2010的网站局域网发布功能(Publish)以前部署asp.net网站时都是复制、粘贴,最近做了bat一键安装mysql和tomcat的setup。就想vs有没有更酷更方便的功能呢?果然有,上午研究了下vs的远程发布asp.net网站的功能。1,准备 一台开发机,安装了vs2010(vs2012也行) 一台局域网中的服务器(虚拟机也行),必须已经安装iis7(iis 7.5,8也行) 检查服务器8172端口是否能否访问(做测试就先把服务器防火墙关掉也可以,但是最好自己配置防火墙的例外) 我用的是英文版,麻烦童鞋们自己对照下中文版2,在局域网中的服务器上安装...
        
阅读全文
 
            
        
        
            
    .NET平台4.0 发布网站流程及出错总结
    
            
摘要:.NET平台4.0 发布网站流程及出错总结1、 进入解决方案的web项目下,右击项目选择 "发布(B)"2、发布方法选择“文件系统” 目标位置选择发布到本机上的位置3、将WS.db3拷贝到发布的目录下,换连接数据的对象的话就需要这一步操作,(之前需要修改配置文件,将服务器的数据库添加到本机)4、设置文件夹的权限 4.1 右击已发布的文件夹,选择“属性” ,tab上选择“安全”,点击“编辑”进入em的权限,选择“添加(D)”进入选择用户或组,选择“高级(A)” 4.2 点击“立即查找”,在下面的列表中选择“Everyone”,双击返回选择用户或组界面,确定5、进入IIS设置,
        
阅读全文
 
            
        
        
            
    使用队列和线程对现有asp.net动态页处理进行资源控制
    
            
摘要:使用队列和线程对现有asp.net动态页处理进行资源控制IIS可以对ASP.NET站点进行一个资源控制,包括使用的CPU,处理进程数等.但如果想对某些动态页面进行一个资源限制,只允许固定线程数量来处理某些动态请求,而不至于在某些情况个别的动态请求把整个站的资源都占光了.对于这么小的粒度控制显然不适合由IIS来做,这个时候就可以通过asp.net提供IHttpAsyncHandler来解决这种事情.处理结构由于Asp.net提供了异步处理Handler,所以可以在Handler的Begin处理方法中把具体对象存放到队列中,然后根据实际业务的需要来配置1-N个线程来处理相关请求.IHttpAsyn
        
阅读全文
 
            
        
        
            
    优化网站设计(二十二):避免404错误
    
            
摘要:优化网站设计(二十二):避免404错误前言网站设计的优化是一个很大的话题,有一些通用的原则,也有针对不同开发平台的一些建议。这方面的研究一直没有停止过,我在不同的场合也分享过这样的话题。作为通用的原则,雅虎的工程师团队曾经给出过35个最佳实践。这个列表请参考Best Practices for Speeding Up Your Web Sitehttp://developer.yahoo.com/performance/rules.html,同时,他们还发布了一个相应的测试工具Yslowhttp://developer.yahoo.com/yslow/我强烈推荐所有的网站开发人员都应该学习这些
        
阅读全文
 
            
        
        
            
    学习.net与ajax的详细案例总结
    
            
摘要:学习.net与ajax的详细案例总结昨天看了一天的ajax,今天又看了两个小时,终于弄出来个门道,其实ajax不是难,不是枯燥,而是自己不会用,这是根本所在下面分享学习经验,一下是我程序的下载地址:http://vdisk.weibo.com/s/BQ2aD或者这个地址http://download.csdn.net/detail/heikeyuit/5398845首先了解什么是ajax。AJAX不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术。通过 AJAX,您的 JavaScript 可使用JavaScript的XMLHttpRequest对象来直接与
        
阅读全文
 
            
        
        
            
    网站架构
    
            
摘要:网站架构三、网站架构在本章节我们来学习一下网站架构,弄明白一些概念东西,以便我们以后的程序开发。什么是网站架构?笔者认为网站架构就是一套系统的规则。通过这套规则,我们可以把一个复杂的系统划分成多个简单子系统的集合,这些子系统相互独立,又与整个系统保持一致。网站架构分为网站物理架构和网站软件架构。网站的物理架构规定了组成软件系统的物理元素、这些物理元素之间的关系、以及它们部署到硬件上的策略,毋庸置疑,对于规模稍大的网站来说,其背后必然是一个服务器集群来提供网站服务。物理架构不是我们讨论的重点我们只讨论软件的系统架构,所以以后我提到的网站架构就是指软件架构。为什么要用网站架构?网站规模到了一定的程
        
阅读全文