话说来到上海已经快半年了,时光如白驹过隙,稍微不注意,时间就溜走了,倒是没有那么忙碌,闲暇之际来博客园还是比较多的,记得上次在逛博问的时候看到有同志在问MVC中Cookie过期后如何作相关处理,他在阐述那么多页面不可能都去一个个手动处理.其实MVC很牛逼的地方就是把Attribute利用的非常完美,接下来就来看下它是如何做到的吧! 第一步.我们要定义一个登录过滤标签-LoginFilterAttribute并且继承AuthorizeAttribute.来看下它内部是啥样子 // Summary:…
关于c#属性的教程:http://www.runoob.com/csharp/csharp-attribute.html 在asp.net mvc5中,可以利用ActionFilterAttribute类,以添加属性的方式很方便地实现权限管理. 这里我们用一个简单案例来作为演示. vs2017新建asp.net mvc5 项目,models文件夹新建AuthorizeFilterAttribute.cs: using System.Web.Mvc; namespace AuthDemo.Mode…
上一篇主要讲解了如何利用ActionFilter过滤关键字,这篇主要讲解如何利用自己打造的ModelBinder来过滤关键字. 首先,我们还是利用上一篇中的实体类,但是我们需要加上DataType特性,以便于我们构造的ModelBinder通过DataTypeName识别出来: 1: using System.ComponentModel.DataAnnotations; 2: using System.Web.Mvc; 3:   4: namespace MvcApplication1.Mod…
正题前的唠叨 本人是才出来工作不久的小白菜一颗,技术很一般,总是会有遇到一些很简单的问题却不知道怎么做,这些问题可能是之前解决过的.发现这个问题,想着提升一下自己的技术水平,将一些学的新的'好'东西记录下来,一是加深印象:二是以后可以作为参考:三是希望博友们可以提出不足和可以优化的地方,一起讨论. 这个是我去一家公司没多久,让我做的小功能,主要是导出excel并在浏览器下载下来. 但是会有不同的细微的需求差别. 第一次发博客,有描述不清楚的地方还请见谅,希望各位多多指点. 进入正题 简单的需求描…
前言 分享一篇关于在电商系统中同步物流轨迹到本地服务器的文章,当前方案使用了快递100做为数据来源接口,这个接口是收费的,不过提供的功能还是非常强大的,有专门的售后维护团队.也有免费的方案,类似于快递鸟,不过数据出现问题就凉凉了 正文 实现思路大概分为三大步: 第一步:提交订阅信息到快递100的接口 第二步:快递100收到请求后会对回调地址进行跟踪,将快递信息推送给回调接口 第三步:回调接口收到Post推送的数据后,进行逻辑处理 注意:回调的地址建议单独部署一个API项目,不要放在主程序下面:或…
在 ASP.NET MVC 中充分利用 WebGrid https://msdn.microsoft.com/zh-cn/magazine/hh288075.aspx Stuart Leeks 下载代码示例 今年早些时候,Microsoft 发布了 ASP.NET MVC 版本 3 (asp.net/mvc) 以及一款名为 WebMatrix 的新产品 (asp.net/webmatrix). 该 WebMatrix 版本中提供了几个工作效率帮助组件,可以简化诸如图表和表格数据呈现等任务. 其中…
在Asp.Net MVC中可以用继承ValidationAttribute的方式,自定制实现RequiredIf标签对Model中的属性进行验证 具体场景为:某一属性是否允许为null的验证,要根据另一个属性值是否为true来判断 代码如下所示: 1):后台代码 public class RequiredIfAttribute : ValidationAttribute, IClientValidatable { private RequiredAttribute innerAttribute…
在Asp.Net MVC中可以用继承ValidationAttribute的方式,自定制实现Model两个中两个属性值的比较验证 具体应用场景为:要对两个属性值的大小进行验证 代码如下所示: /// <summary> /// Specifies that the field must compare favourably with the named field, if objects to check are not of the same type /// false will be r…
在ASP.NET MVC中,有三种拦截器:Action拦截器.Result拦截器和Exception拦截器, 所谓的拦截器也没有什么的,只是写一个类,继承另一个类和一个接口,顺便实现接口里面的方法而以... [c-sharp] view plaincopy public class ExceptionFillters : FilterAttribute,IExceptionFilter  {  //发生异常时会执行这段代码 public void OnException(ExceptionCon…
看到本文的标题,相信你会忍不住进来看看! 没错,本文要讲的就是这个重量级的东西,这个不仅仅支持单表查询,更能支持连接查询, 加入一个表10W数据,另一个表也是10万数据,当你用linq建立一个连接查询然后利用take,skip读取第N页数据的时候, 你的程序就挂了,因为,你很可能读取需要几十秒甚至几分钟以上. 下面来讲解一下,ASP.NET MVC + EF 利用存储过程读取大数据的详细过程. 1.首先,我们创建一个实体类PageinationInfo,主要用于分页,如下 public clas…
ASP.NET MVC + EF 利用存储过程读取大数据,1亿数据测试很OK 看到本文的标题,相信你会忍不住进来看看! 没错,本文要讲的就是这个重量级的东西,这个不仅仅支持单表查询,更能支持连接查询, 加入一个表10W数据,另一个表也是10万数据,当你用linq建立一个连接查询然后利用take,skip读取第N页数据的时候, 你的程序就挂了,因为,你很可能读取需要几十秒甚至几分钟以上. 下面来讲解一下,ASP.NET MVC + EF 利用存储过程读取大数据的详细过程. 1.首先,我们创建一个实…
IOC 容器在 ASP.NET MVC 中的应用 IOC:Inversion Of Control 翻译为控制反转,我们在面向对象软件开发过程中,一个应用程序它的底层结构可能由N种不同的构件来相互协作来完成我们定义的系统的业务逻辑.哪么每一个构件可能相互独立和相互依赖,如果相互依赖的构件中的某一个构件出现异常,就会影响到整个系统的稳定运行,对象之间的耦合关系是无法避免的,也是必要的,因为这是协同工作的基础.如何降低系统之间.模块之间和对象之间的耦合度,是软件工程永远追求的目标之一.为了解决对象之…
在ASP.NET MVC中使用Unity进行依赖注入的三种方式 2013-12-15 21:07 by 小白哥哥, 146 阅读, 0 评论, 收藏, 编辑 在ASP.NET MVC4中,为了在解开Controller和Model的耦合,我们通常需要在Controller激活系统中引入IoC,用于处理用户请求的Controller,让Controller依赖于ModelRepository的抽象而不是它的实现. 我们可以在三个阶段使用IoC实现上面所说的解耦操作,首先需要简单介绍一下默认情况下C…
ASP.NET MVC:利用ASP.NET MVC4的IBundleTransform集成LESS 背景 LESS确实不错,只是每次写完LESS都要手工编译一下有点麻烦(VS插件一直没有安装好),昨天在官方看到了如何用IBundleTransform集成LESS,今天就记录一下. 参考资料:http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minification. 代码 LessTransform 1 using System; 2 usi…
[toc] 前面介绍了 Action 执行过程中的几个基本的组件,这里介绍 Action 方法的参数绑定. 数据来源 为 Action 方法提供参数绑定的原始数据来源于当前的 Http 请求,可能包含在请求的 Http 报文头部或报文体中,亦可能包含在当前请求的 Url 中.在 Asp.net mvc 中使用一个 IValueProvider 类型的对象来为 Action 方法的输入参数绑定提供原始的数据源.该接口定义如下: public interface IValueProvider{ //…
Controller 激活是指根据路由系统解析出来的 Controller 的名称创建 控制器(Controller)的过程,这里的控制器泛指实现了 IController 接口的类型 激活过程中的核心类型 Controller Asp.net mvc 中的控制器 类都是抽象类 Controller 的子类,Controller 类又是抽象类 ControllerBase 的子类,其实现了 IController 接口,该接口定义在该接口的定义如下所示: public interface ICo…
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作篇)(下) [04]浅谈ASP.NET框架 [05]浅谈ASP.NET MVC运行过程 [06]浅谈ASP.NET MVC 控制器 [07]浅谈ASP.NET MVC 路由 [08]浅谈ASP.NET MVC 视图 [09]浅谈ASP.NET MVC 视图与控制器传递数据 [10]浅谈jqGrid…
Ajax的全名为:Asynchronous Javascript And XML(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术.Ajax技术首先向Web服务器发送异步请求数据,然后使用返回的内容来更新部分视图页面,而不是整个页面. Ajax异步请求包含两种类型的内容:一种是服务端生成的HTML代码,直接嵌入到页面里:另一种是原始的序列化数据,客户端JavaScript生成或更新HTML代码. ASP.NET MVC中关于Ajax的使用主要在以下两个方面: 1…
Cache有多种翻译,可以是高速缓冲存储器,也可以是法国的服装品牌,本文只是简单的谈谈就是ASP.NET 中Cache,做过Web应用程序的都知道,如果网站访问量比较大,系统应用程序可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能. 举一个很简单的例子,如果在博客园发布文章到首页,发布之后是不能即时看到自己的文章的,大概一分钟之后才能刷出数据,这就是常用的页面缓存.缓存分为两种,一般都是页面缓存以及应用程序缓存. 页面缓存 页面输出缓存是一类针服务器应用程…
在 Asp.NET MVC 中使用 SignalR 实现推送功能 罗朝辉 ( http://blog.csdn.net/kesalin ) CC许可,转载请注明出处 一,简介 Signal 是微软支持的一个运行在 Dot NET 平台上的 html websocket 框架.它出现的主要目的是实现服务器主动推送(Push)消息到客户端页面,这样客户端就不必重新发送请求或使用轮询技术来获取消息. 可访问其官方网站:https://github.com/SignalR/ 获取更多资讯. 二,实现机制…
C# 动态生成word文档 本文以一个简单的小例子,简述利用C#语言开发word表格相关的知识,仅供学习分享使用,如有不足之处,还请指正. 在工程中引用word的动态库 在项目中,点击项目名称右键-->管理NuGet程序包,打开NuGet包管理器窗口,进行搜索下载即可,如下图所示: 涉及知识点 _Application: 表示word应用程序的接口,对应的实现类是Application类. _Document:表示一个word文档,通过_Application对应的文档接口进行创建. Parag…
js基础 目录 javascript基础 ESMAScript数据类型 DOM JS常用方法 回到顶部 javascript基础 常说的js包括三个部分:dom(文档document).bom(浏览器对象browser).ESMAScript(语法).js是esmascript的实现和扩展. ESMAScript数据类型 数据类型 七种数据类型:string,number,boolean,null,undefined,symbol (ECMAScript 2015新增),object. 六种基本…
很久没在博客园发表文章了,今天来总结一下如何在asp.net mvc中添加自定义的HTML辅助方法.我们现在设计这么一个目前,利用自定义的HTML方法来渲染一个普通的img标记.直接进入主题吧: 首先我们先来看一下一个普通的img标签在HTML中的代码: <img src="Content/images/封面.jpg" alt="图片" id="img01" width="500px" height="250p…
ASP.NET MVC 学习笔记-7.自定义配置信息   ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettings> 2 <add key="LogInfoProvider" value="Cookie" />//登录信息保存方式 3 </appSettings> 但是这些配置都是单个字符串信息,在某些情况下,无法做到灵活配置. 针对这种情况,使用…
Bootstrap与asp.net MVC框架结合,产生警告框.主要是利用控制器的TempData 字典对象 生成临时数据. ASP.NET MVC的TempData用于传输一些临时的数据,例如在各个控制器Action间传递临时的数据或者给View传递一些临时的数据,相信大家都看过“在ASP.NET页面间传值的方法有哪几种”这个面试题,在ASP.NET MVC中TempData的就是其中的一种传值方法.TempData默认是使用Session来存储临时数据的,TempData中存放的数据只一次访…
上一篇,介绍了怎么导出Excel文件,这篇文章介绍在ASP.NET MVC中使用水晶报表. 项目源码下载:https://github.com/caofangsheng93/CrystalReportInMac 前提条件:你需要有VS,SQL Server 当然最重要的就是安装Crystal Report. 这里我提供我百度网盘的安装文件:http://pan.baidu.com/s/1bpcK3ZD,我这里是Crystal Report for VS2013的版本.需要其他的版本大家自己去搜去…
在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 通常,在 Controller 中,我们定义多个 Action ,每个 Action 的返回类型一般是 ActionResult,在 Action 处理的最后,我们返回对于视图的调用. public ActionResult Index() { return this.View(); } 默认情况下,…
Serilog 是一种非常简便记录log 的处理方式,使用Serilog可以生成本地的text文件, 也可以通过 Seq 来在Web界面中查看具体的log内容. 接下来就简单的介绍一下在Asp.Net MVC中如何配置是Serilog 生效: 1):下载并且安装Seq,具体的下载URL 为 [http://getseq.net/Download],安装到默认的路径之后,实际上时候启动了一个Win Service,并且监听的端口号默认为 5341. 安装的最后一步截图如下: 然后我们到Servic…