代码改变世界

随笔分类 - Asp.Net

.Net缓存管理框架CacheManager

2015-11-30 10:50 by JustRun, 21624 阅读, 收藏, 编辑
摘要:Cache缓存在计算机领域是一个被普遍使用的概念。硬件中CPU有一级缓存,二级缓存, 浏览器中有缓存,软件开发中也有分布式缓存memcache, redis。缓存无处不在的原因是它能够极大地提高硬件和软件的运行速度。在项目开发中,性能慢的地方常常是IO操作频繁的地方,读取数据库是我们常见的消耗性能的地方。这个时候,如果将使用频繁的数据缓存到能够高速读取的介质中,下次访问时,不用再去请求数据库,直接... 阅读全文

全新的membership框架Asp.net Identity(2)——绕不过的Claims

2015-08-06 16:03 by JustRun, 4205 阅读, 收藏, 编辑
摘要:本来想直接就开始介绍Identity的部分,奈何自己挖坑太深,高举高打的方法不行。只能自己默默下载了Katana的源代码研究了好一段时间。发现要想能够理解好用好Identity, Claims是一个绕不过的内容。今天就和大家一起分享一下什么是Claims以及为什么Identity要基于Claims.... 阅读全文

全新的membership框架Asp.net Identity(1)——.Net membership的历史

2014-12-30 08:00 by JustRun, 3356 阅读, 收藏, 编辑
摘要:在Asp.net上,微软的membershop框架经历了Asp.net membership到Asp.net simple membership,再到现在的Asp.net Identity. 每一次改变,都使得验证框架更加的适应变化和可定制。这篇文章是Asp.net Identity系列的开篇,主要... 阅读全文

下一代Asp.net开发规范OWIN(3)—— Middleware

2014-09-12 09:50 by JustRun, 5903 阅读, 收藏, 编辑
摘要:Middleware是OWIN管道的基本组成单元,最后拼接的OWIN管道来处理客户端请求,输出网页。这篇文章,首先看看Web Form, MVC, Web API如何结合OWIN使用。 然后将如何编写Middleware和编写一个具体的Cache Middleware.阅读目录:一. 原有的Web ... 阅读全文

下一代Asp.net开发规范OWIN(2)—— Katana介绍以及使用

2014-09-09 07:50 by JustRun, 11655 阅读, 收藏, 编辑
摘要:接上篇OWIN产生的背景以及简单介绍,在了解了OWIN规范的来龙去脉后,接下来看一下Katana这个OWIN规范的实现,并看看如何使用在我们的Web开发中。阅读目录:一. Katana项目的结构和包含的内容 1.1 Host 1.2 Server 1.3 Middleware 1.4 Applica... 阅读全文

下一代Asp.net开发规范OWIN(1)—— OWIN产生的背景以及简单介绍

2014-09-04 07:22 by JustRun, 14932 阅读, 收藏, 编辑
摘要:随着VS2013的发布,微软在Asp.Net中引入了很多新的特性,比如使用新的权限验证模块Identity, 使用Async来提高Web服务器的吞吐量和效率等。其中一个不得不提的是OWIN和Katana. OWIN的全称是Open Web Interface For .Net, OWIN是.Net开... 阅读全文

IoC容器Autofac(5) - Autofac在Asp.net MVC Filter中的应用

2014-06-18 07:30 by JustRun, 3209 阅读, 收藏, 编辑
摘要:Autofac结合EF在MVC中的使用,上一篇IoC容器Autofac(4) - Autofact + Asp.net MVC + EF Code First(附源码)已经介绍了。但是只是MVC中Controller实现了依赖注入。而在Filter中如何实现依赖的注入? 下面我们以Filter中如何... 阅读全文

Asp.net MVC中提交集合对象,实现Model绑定

2013-11-17 10:32 by JustRun, 3265 阅读, 收藏, 编辑
摘要:Asp.net MVC中的Model自动绑定功能,方便了我们对于request中的数据的处理, 从客户端的请求数据,自动地以Action方法参数的形式呈现。有时候我们的Action方法中想要接收数组类型的参数,如何写表单,使得Model能够自动绑定到数组参数上呢?看下面的代码,Action方法UpdateStudents就需要IEnumerable类型的参数,用来批量更新Student数据。[HttpPost] public ActionResult UpdateStudents(IEnumerable students) { //....save }上面是一个非常典型的应用场景, 如... 阅读全文

使用Web.Config Transformation配置灵活的配置文件

2013-11-12 08:08 by JustRun, 4082 阅读, 收藏, 编辑
摘要:发布Asp.net程序的时候,开发环境和发布环境的Web.Config往往不同,比如connectionstring等。如果常常有发布的需求,就需要常常修改web.config文件,这往往是一件非常麻烦的事情。Web.Config Transformation能够在不同的发布环境下,产生不同的web.config文件,非常方便和实用。阅读目录:一、Web.Config Transformation二、一个实际的例子三、Web.Config Transformation具体语法一. Web.Config Transformation项目中有个默认的web.config, 还可以定义格式为web. 阅读全文

解决IE8不支持数组的indexOf方法

2013-04-02 22:17 by JustRun, 2071 阅读, 收藏, 编辑
摘要:今天,测试报过来一个js bug, 在IE8下有个js错误,但是在其它浏览器下(Firefox, Chrome, IE9)下面都很正常。后来调试发现原因是在IE8下, js数组没有indexOf方法.下面是我找到的解决办法:在使用indexOf方法前,执行一下下面的js, 原理就是如果发现数组没有indexOf方法,会添加上这个方法。if (!Array.prototype.indexOf){ Array.prototype.indexOf = function(elt /*, from*/) { var len = this.length >>> 0; var from = 阅读全文

Javascript如何判断对象是否相等

2013-03-18 10:13 by JustRun, 1672 阅读, 收藏, 编辑
摘要:在做表单页面的时候,想判断2个js对象,是不是所有完全相同。这里是stackoverflow上的解决办法,在这里记录一下。原文地址: http://stackoverflow.com/questions/1068834/object-comparison-in-javascriptObject.prototype.equals = function(x){ var p; for(p in this) { if(typeof(x[p])=='undefined') {return false;} } for(p in this) { if (this[p]) { ... 阅读全文

web site 和 web application的区别

2012-02-23 09:44 by JustRun, 1091 阅读, 收藏, 编辑
摘要:今天客户发过来一个Asp.Net的网站的压缩包, 由于是发布过的,不太容易判断是web site还是web application, 而且对于两者的区别也是一直比较模糊。不同点1. 创建方式不同一个是FILE->NEW->PROJECT->ASP.NET WEB APPLICATION 另外一个是 FILE->NEW->WEBSITE2. 项目结构方式不同web application 会产生.csproj项目文件,来记录一些编译调试设置而 web site 就只是一个文件目录3. 发布两者都可以通过"publish"来发布, 这样就都会预编译 阅读全文

asp.net mvc更换命名空间的错误

2009-06-08 15:06 by JustRun, 157 阅读, 收藏, 编辑
摘要:今天试了试Asp.net mvc 1.0, 相比较monorail, 易用性好了很多。更换命名空间错误本来开始的命名空间是用的WebSiteMVC, 后来想改成WebSite.应当替换的地方都替换掉了,rebuild后还是出现下面这个错误:"The controller name 'Home' is ambiguous between the following types: WebSiteMVC.Controllers.HomeController WebSite.Controllers.HomeController."处理方法是右键点你的项目, 更改as 阅读全文

Windows Server 2003下网站发布问题

2009-06-03 19:19 by JustRun, 321 阅读, 收藏, 编辑
摘要:1. 检查对应的web服务扩展常常发布不上的原因是因为安装环境有问题,先装的.net framework, 后装的IIS,就会导致IIS不支持.net 1.1 或者.net 2.0 OR .net 3.5解决办法:重新安装.net framework2. 选择对应的运行环境确保你的站点运行在正确的framework支持下3. 确保执行权限为"纯脚本"没有配置,会出现如下错误HTTP 403.1 禁止访问:禁止可执行访问。您试图从目录中执行 CGI、ISAPI 或其他可执行程序,但该目录不允许执行程序。 4.启用 匿名访问权限确定·配置如下 5. 站点文件夹的用户权 阅读全文