刚才在博客园看了篇文章,http://www.cnblogs.com/cmt/p/csharp_regex_timeout.html  突然联想到以前遇到的问题,w3wp进程吃光CPU都挂起IIS进程,即使网站或者服务出现了问题,导致CPU百分之百,但是有时候我们根本不知道具体哪里出了问题!公司曾经一个项目组遇到过WCF服务端莫名其妙就CPU占用百分之百的情况,但是具体有查不到原因.我总结了下,查不到原因是因为没有合理的方法,根本不知道从何开始查.如果当时对客户端或者服务端方法调用都加上日志,估…
一.MVC的异常过滤器   1.自定义MVC异常过滤器 创建一个类,继承HandleErrorAttribute即可,如果不需要作为特性使用直接实现IExceptionFilter接口即可, 注意,该接口在System.Web.Mvc 命名空间下   /// <summary> /// 自定义的MVC异常过滤器 /// 可以在Controller或Action上单独使用,也可直接注册为全局过滤器 /// </summary> publicclassMVCExceptionFilte…
webapi中post提交的数据必须是一个类,get提交的数量无所谓 多种参数get时,参数名不能相同: 在能通过c#的校验的前提下,参数名.参数数量不能全完相同 public string Get(int page, int pagesize) { return "test1"; } public string Get(int page) { return "test2"; } 这是没问题的 ) { return "test1"; } publ…
1.前后台获取Action.Controller.ID名方法 前台页面:ViewContext.RouteData.Values["Action"].ToString(); ViewContext.RouteData.Values["Controller"].ToString(); ViewContext.RouteData.Values["ID"].ToString(); 后台页面:RouteData.GetRequiredString(&qu…
这几天一直在复习C#基础知识,过程中也发现了自己以前理解不清楚和混淆的概念.现在给大家分享出来我的笔记: 一,.NET平台的重要组成部分都是有哪些 1)FCL (所谓的.NET框架类库) 这些类是微软事先定义好的. 例如当我们新创建一个windows窗体应用程序是,VS会帮我们自动生成下面的代码: using System; using System.Collections.Generic; using System.Text; 这些就是微软事先为程序员定义好的类库.程序员可以直接使用的. 2)…
如果framework找到一个匹配的URI,创建一个包含占位符值的字典,key就是这些占位符(不包括大括号),value来自URI或者默认值,这个字典存储在IHttpRouteData对象中.默认值可能是RouteParameter.Optional,此时对应的key/value不会被添加到该字典中. routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{category}/{id…
1.简单例子 /// <summary> /// 全局页面控制器异常记录 MVC的异常处理 /// </summary> public class CustomErrorAttribute : HandleErrorAttribute { public override void OnException(ExceptionContext filterContext) { base.OnException(filterContext); //设置为true阻止golbal里面的错误执…
拿WebApi为例,我们一般会生成一份帮助文档,帮助文档会在Area中 我们现在要讲帮助文档设为首页 只需在App_Start文件夹下添加 RouteConfig 类 public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( name: &…
1.建立一个TimingActionFilter过滤器 public class TimingActionFilter : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { GetTimer(filterContext, "action").Start(); base.OnActionExecuting(filterContext)…
方法一:通过Request.Form [HttpPost]        public ActionResult Test()        {            string id=Request.Form["id"]; return View();        } 方法二:通过映射到FormCollection [HttpPost]        public ActionResult Test(FormCollection form)        {           …
一.jquery 父.子页面之间页面元素的获取,方法的调用: 1. 父页面获取子页面元素: 格式:$("#iframe的ID").contents().find("#iframe中的控件ID").click(); 实例:$("#ifm").contents().find("#iBtnOk").click(); // ifm 为 <iframe> 标签 id; iBtnOk 为子页面按钮 id 2. 父页面调用子页面…
package com.gezhi; /** * 创建一个自定义异常SpendMoneyException类 *  * @author square 凉 * */@SuppressWarnings("serial")/** * 该类继承异常类的父类Exception *  * @author square 凉 * */public class SpendMoneyException extends Exception {  /**  * 显示写出自定义异常的无参构造器  */ publ…
什么是Cors? CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing).它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制.本文详细介绍CORS的内部机制. 一.简介 CORS需要浏览器和服务器同时支持.目前,所有浏览器都支持该功能,IE浏览器不能低于IE10. 整个CORS通信过程,都是浏览器自动完成,不需要用户参与.对于开发者来说,CORS通信与同源的AJAX通信没有差别,代…
Autofac前面写了那么多篇, 其实就是为了今天这一篇, Autofac在MVC和WebApi中的应用. 一.目录结构 先看一下我的目录结构吧, 搭了个非常简单的架构, IOC(web), IBLL, BLL, IDAL, DAL, Helper public interface ITestBll { void Say(List<string> msg); } 我里面都是为了实现Say方法的. public class TestBll : ITestBll { public void Say…
1.在webapi中使用controller/action/id的路径配置,打开文件[App_Start] -[WebApiConfig] config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional } ); 2.直接使用[HttpPost]过滤…
一.为什么需要路由优先级 大家都知道我们在Asp.Net MVC项目或WebApi项目中注册路由是没有优先级的,当项目比较大.或有多个区域.或多个Web项目.或采用插件式框架开发时,我们的路由注册很可能不是写在一个文件中的,而是分散在很多不同项目的文件中,这样一来,路由的优先级的问题就突显出来了. 比如: App_Start/RouteConfig.cs中 routes.MapRoute( name: "Default", url: "{controller}/{action…
路由方面的: 转载地址:http://www.jb51.net/article/73417.htm Author:lijiao 这是一个对Asp.Net Mvc的一个很小的功能拓展,小项目可能不太需要这个功能,但有时候项目大了注册的路由不生效时你应该要想到有可能是因为路由顺序的原因,这时这个路由优先级的功能有可能就会给你带来便利.   一.为什么需要路由优先级 大家都知道我们在Asp.Net MVC项目或WebApi项目中注册路由是没有优先级的,当项目比较大.或有多个区域.或多个Web项目.或采…
在MVC的WebApi中默认是没有开启Session会话支持的.需要在Global中重写Init方法来指定会话需要支持的类型 public override void Init() { PostAuthenticateRequest += MvcApplication_PostAuthenticateRequest; base.Init(); } void MvcApplication_PostAuthenticateRequest(object sender, EventArgs e) { H…
import org.apache.commons.lang.time.StopWatch; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.After; import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annota…
有三种方法可以使一个Action处理多个请求 动态方法调用DMI 定义逻辑Acton 在配置文件中使用通配符 这里就说一下Dynamic Method nvocation ,动态方法调用,什么是动态方法调用呢,就是一个Action里面包含多个方法调用 一般情况下,我们只需要在Action中写一个execute的方法,并返回String 就可以了,或者继承ActionSupport父类,重写这个方法. 但是这样在一个Action中只能完成一个请求,为了解决真实开发中,同一个Action能处理类似的…
首先我们先来直接配置,然后再来讲原理: 第一步:jar包的引入: 我们可以到struts2的官网上下载: http://struts.apache.org/download.cgi#struts2513 然后解压将里面的app文件夹下的示例war文件解压,将里面的struts.xml复制到我们新创建的src目录下(特别说一下,struts2最新的Struts 2.5.13版本压缩包里面没有示例的blank示例文件,我是在2.3.34里面获得的) 配置文件大概是这样的: <?xml version…
1.修改struts2常量配置(3种) 第一种 在str/struts.xml中添加constant标签 <struts> <!-- 如果使用使用动态方法调用和include冲突 --> <constant name="struts.enable.DynamicMethodInvocation" value="true" /> <!-- 开发者模式 --> <constant name="struts.…
我们知道ASP.NET Core MVC中Controller的Action上可以声明HttpGet和HttpPost特性标签,来限制可以访问Action的Http请求类型(GET.POST等). 那么默认情况下如果我们没有给Controller的Action声明任何标签,那Action支持的是什么类型的Http请求呢? 为此我们新建一个ASP.NET Core MVC项目,并且新建一个HomeController,它有两个Action,如下所示: public class HomeContro…
在ASP.NET Core MVC中,我们有时候需要在Controller的Action中直接输出数据到Response.Body这个Stream流中,例如如果我们要输出一个很大的文件到客户端浏览器让用户下载,那么在Controller的Action中用Response.Body这个Stream流,来逐步发送文件数据到客户端浏览器是最好的办法. 但是我今天在ASP.NET Core MVC的Controller的Action中使用Response.Body输出数据到客户端浏览器的时候遇到了个问题…
Struts1中actionform和action属于MVC哪一层,为什么? 解答:actionform和action属于MVC的Model层,Action用来处理业务逻辑,actionform保存用户表单数据以便于在不同页面间传递.而MVC中的model层就是业务逻辑层,该层用于实现具体的业务逻辑.状态维护及管理.…
在MVC WebAPI中加入任务调度功能.即在MVC WebAPI启动时,启用任务调度程序. 但是这里有一个问题点,就是部署好IIS站点后,发现任务调度并没有启用.原因为何? 原因是部署好IIS站点后,这时站点并没有进入到Global.asax文件下的Application_Start()程序入口.必需要通过访问站点才能进入Global.asax文件下的Application_Start()程序入口. 即部署好IIS站点后,必需先通过预览方式查看才会进入到Global.asax文件下的Appli…
1,创建一个继承自 FilterAttribute, IActionFilter的类 namespace HeatMetering2.Filters { public class HMV2AuthenticationAttribute : FilterAttribute, IActionFilter { int notAuthentication = 0; //设置未认证标志,用于区分返回不同的未认证页面 public void OnActionExecuted(ActionExecutedCo…
转发自:http://www.cnblogs.com/UliiAn/p/5402146.html 在WEB Api中,引入了面向切面编程(AOP)的思想,在某些特定的位置可以插入特定的Filter进行过程拦截处理.引入了这一机制可以更好地践行DRY(Don't Repeat Yourself)思想,通过Filter能统一地对一些通用逻辑进行处理,如:权限校验.参数加解密.参数校验等方面我们都可以利用这一特性进行统一处理,今天我们来介绍Filter的开发.使用以及讨论他们的执行顺序. Filter…
上一篇搭建了页面,这里写下功能. 这里我用WebApi实现数据的增删改查. 一.新建Controller 为了区分明确,我在Controller文件夹下建立一个WebApi文件夹存放. 选中文件夹右键单击=>添加=>控制器=>Web Api控制器 1.这样会自动生成一个控制器,继承ApiController类 namespace mvc.Controllers.WebApi { public class DepartmentController : ApiController { } }…
什么是MVC (模型 视图 控制器)? MVC是一个架构模式,它分离了表现与交互.它被分为三个核心部件:模型.视图.控制器.下面是每一个部件的分工: 视图是用户看到并与之交互的界面. 模型表示业务数据,并提供数据给视图. 控制器接受用户的输入并调用模型和视图去完成用户的需求. 图: MVC (模型.视图.控制器) 你能解释下MVC的完整流程吗? 下面是MVC(模型.视图.控制器)架构的控制流程: 所有的终端用户请求被发送到控制器. 控制器依赖请求去选择加载哪个模型,并把模型附加到对应的视图. 附…