从零开始写C# MVC框架
文章平均质量分 59
闪耀的瞬间
漫漫程序路:路漫漫其修远兮 吾将上下而求索
展开
-
如何禁用Visual Studio Browser Link
问题:VS2013、2015新建MVC网站并浏览后,页面默认自动启用Browser Link功能,Chorme浏览器——按F12——选择Network,会发现网站重复不停请求有点烦,想禁用此功能。方法,只需要在web.config中添加配置节点即可原创 2016-07-19 09:37:12 · 6074 阅读 · 0 评论 -
从零开始写C# MVC框架之--- 开篇
从2011-7到2016-9月,4年多的工作中,做过3年.NET,1年多java,现在从事java,通过公司开发的框架,只需做很少的事情,就能快速进行开发,而我们往往就忽视了这些基本的东西,却一直在使用别人做的东西,也就是,你只会运用,那么换了一个环境,换了一个公司的框架,可能就要点时间学习了。 2016年初未辞职前还在一个大型电商公司(长沙海商网络技术有限公司),在技术大神的带领下进原创 2016-09-11 20:57:19 · 27662 阅读 · 21 评论 -
负载均衡解读
负载均衡是什么? 负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务 负载均衡有哪几实现方式?1、HTTP重定向负载均衡 浏览器请求负载均衡服务器,服务器计算得到真实处理服务地址,把地址写入到http重定向响应中返原创 2016-10-06 16:00:19 · 839 阅读 · 0 评论 -
Windows平台分布式架构实践 - 负载均衡
概述 最近.NET的世界开始闹腾了,微软官方终于加入到了对.NET跨平台的支持,并且在不久的将来,我们在VS里面写的代码可能就可以通过Mono直接在Linux和Mac上运行。那么大家(开发者和企业)为什么那么的迫切的希望.NET跨平台呢?第一个理由是便宜,淘宝号称4万多台服务器全部运行在Linux,Linux平台下还有免费的MySql,这些都是免费的,这些省下来直接就是利润呀,做企业的成本可转载 2016-09-07 21:25:19 · 716 阅读 · 0 评论 -
从零开始写C# MVC框架之--- C# Redis 实现加添加测试项目
1、了解RedisRedis是一款开源的、高性能的键-值存储(key-value store)。它常被称作是一款数据结构服务器(data structure server)。Redis的键值可以包括字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)和 有序集合(sorted sets)等数据类型。 对于这些数据类型,你可以执行原子操作。例如:对字符串进行附加操原创 2016-09-18 20:48:59 · 4943 阅读 · 0 评论 -
从零开始写C# MVC框架之--- 定义基类控制器、实现全局异常捕获
定义基类控制器的好处:把一些公用的信息抽象出来供继承的子类使用,公用异常捕获方法,登录信息失效后的重定向跳转等等。定义BaseController和BaseAdminController,BaseAdminController继承BaseController1、BaseController 作用:重写异常捕获方法 /// /// 异常时处理原创 2016-09-15 13:10:22 · 4609 阅读 · 1 评论 -
从零开始写C# MVC框架之--- 根据用户角色权限获取菜单
当集成完上一篇的功能后,复制来复制去,直到完成菜单、角色、组织机构、用户维护功能,剩下的就是根据当前登录用户的所属角色获取菜单了。1、菜单管理2、用户管理2.1、新增用户时可以选择角色3、组织机构4、角色管理4.1、角色菜单5、根据用户所属角色,获取用户所能看到的菜单,多个角色取并集,框架最多支持3级菜单,生成菜单html原创 2016-09-18 11:52:16 · 9792 阅读 · 4 评论 -
从零开始写C# MVC框架之--- 集成DataGrid、layer弹出层、ZTree
1、DataGrid控件:网上有很多:jqGrid、EasyUi的datagrid、datatables等等,选择后下载,添加到项目,并引入到框架,都提供有API调用,使用方式大同小异,在页面中定义一个Id区域存放列表,使用js获取数据,后台返回datagrid控件需要的数据格式2、layer弹出层:layer是一个比较优秀的第三方弹出层,使用简单,官方提交比较好的API支持,集成到框原创 2016-09-18 11:34:33 · 4212 阅读 · 0 评论 -
从零开始写C# MVC框架之--- 主框架页
后台管理系统的布局和互联网系统的布局往往不同后台管理系统的布局倾向于嵌iframe,结构是上、左、右,划分3块区域,左侧菜单、右侧iframe,来和互联网系统对比一下,比如微信公众号后台1、本系统框架界面1.1、可以把左侧菜单缩起来2、微信公众号后台界面---没有iframe,菜单和右侧内容在一个页面上因客户喜好等原因,框架页可能要支持换肤之类的功能,设原创 2016-09-18 10:59:40 · 5337 阅读 · 2 评论 -
从零开始写C# MVC框架之--- 设计用户、菜单、组织机构、角色等表
框架使用的是Code First模式,我是直接新建:用户、菜单、组织机构、角色、角色菜单、角色用户实体类(User、Menu、Department、Role、RoleMenu、RoleUser)再专门在PowerDesigner中单独设计了一下,更清晰的把表结构展示给大家将表的字段和字段属性设置好后,把表设置到上下文中,public partial class Data原创 2016-09-15 23:49:43 · 6297 阅读 · 0 评论 -
C# 用 checked 做字段,但checked是C#关键字
使用ztree时,用到checkbox勾选操作,当编辑操作时已勾选的需要被勾上,需要用到checked属性(checked=true),而C#类中,checked与关键字发生冲突,查找了解决办法:方法有三...1.大写...Checked...2.加@...@checked...其实跟我的问题没关系...3.指定序列化成员名称...[DataMember(Name原创 2016-09-03 12:34:00 · 5579 阅读 · 0 评论 -
从零开始写C# MVC框架之--- 用autofac ioc 容器实现依赖注入
本章查找了一篇对依赖注入解释得非常不错的文章为基础,再加上自己的理解,不然还真不好用语言的方式表达清楚。CodingLabs --- 依赖注入那些事儿依赖注入产生的背景: 随着面向对象分析与设计的发展,一个良好的设计,核心原则之一就是将变化隔离,使得变化部分发生变化时,不变部分不受影响。为了做到这一点,要利用面向对象中的多态性,使用多态性后,客户类不再直接依赖服原创 2016-09-13 20:35:06 · 8556 阅读 · 8 评论 -
从零开始写C# MVC框架之--- 使用Areas分离ASP.NET MVC项目
为什么需要分离? 我们知道MVC项目各部分职责比较清晰,相比较ASP.NET Webform而言,MVC项目的业务逻辑和页面展现较好地分离开来,这样的做法有许多优点,比如可测试,易扩展等等。但是在实际的开发中,随着项目规模的不断扩大,Controller控制器也随之不断增多。如果在Controllers文件夹下面有超过两位数controller,即便采用良好的命名规范,或者用子文件夹的形式区原创 2016-09-13 19:11:22 · 10250 阅读 · 1 评论 -
从零开始写C# MVC框架之--- 服务接口与实现
服务层,设计时添加了接口与实现,而面向接口编程也是好处多多。来上图看服务层结构Zy.Xn.IServices是接口,Zy.Xn.Services是接口的实现,在对应的项目下建立了System文件夹,系统框架的方法放在此文件夹下,所有接口服务需要继承 IService 类(依赖注入释放资源),在Zy.Xn.Service的实现类中需要继承 ServiceBase 类(提供EF conte原创 2016-09-12 15:35:45 · 6778 阅读 · 3 评论 -
从零开始写C# MVC框架之--- 数据库表设计
怎么在项目中使用Code First? 1、设计好数据库表实体类,字段--绑定对应属性(是否非空,长度限制等),绑定到上下文基类中 2、使用Migrations迁移报告,把表生成到数据库中拿项目中的用户表做演示:详细操作如下,1.1、在Zy.Xn.Model项目下新建System文件夹,代表系统表,业务表放在Business下,把业务和系统框架本身区分开,接着在Sy原创 2016-09-12 09:04:02 · 5442 阅读 · 2 评论 -
从零开始写C# MVC框架之--- 项目结构
框架总分2个项目:一个帮助类项目、一个Web开发项目 ,Zy.Utilities、ZyCommon1、ZyCommon,Web开发项目结构原创 2016-09-11 22:50:46 · 14168 阅读 · 4 评论 -
从零开始写C# MVC框架之--- 配置log4日志
在框架中配置日志分2步,一个是在帮助项目Zy.Utilities--Zy.Utility.Core中新建log类,封装写入日志方法,还需要在Zy.Utility.Core添加 log4net 的引用 1、log实现类[assembly: log4net.Config.XmlConfigurator(Watch = true)]namespace Zy.Utility.Core{原创 2016-09-11 23:30:24 · 4650 阅读 · 0 评论 -
Windows平台分布式架构实践 - 负载均衡(下)
概述 我们在上一篇Windows平台分布式架构实践 - 负载均衡中讨论了Windows平台下通过NLB(Network Load Balancer) 来实现网站的负载均衡,并且通过压力测试演示了它的效果,可以说还是非常的理想的。同时我们也收集到了不少的问题,比如说如何在这种分布式的架构下使用Session,NLB中有一台服务器挂掉了会导致对外暴露的地址无法访问,如果实现服务器之间的同步,转载 2016-09-07 21:31:35 · 977 阅读 · 0 评论 -
ASP.NET MVC 在View(cshtml)中使用自定义帮助类
1、在View中使用比如Html/Ajax/Model之类的帮助类,要在我们的帮助类中继承了一个类WebViewPage2、新建自定义帮助类WebWorkContextWebViewPage类(继承WebViewPage)public abstract class WebWorkContextWebViewPage : System.Web.Mvc.WebViewPage {原创 2016-10-20 10:35:36 · 3995 阅读 · 0 评论