随笔分类 - [61]MVC
-
MVC模式的增删改查+分页50个CSS代码片段
摘要:MVC模式的增删改查+分页MVC(Servlet+JSP+JavaBean)模式适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp负责数据显示,javabean负责封装数据。三层结构图一个简单的增删改查例子的总结。(1)带分页,可以控制每页显示的数据条数,页数超过一定页数,页码会自动调整。(2)利用自定义标签,当数据项超过一定大小的时候,自动回省略号代替。(3)对于多选,和单选的数据项,将数据写在代码里面,这样便于后期维护例如:package cn.lsl.utils;public class Globals { public static String ge... 阅读全文
-
ASP.NET MVC 4 小项目开发总结
摘要:ASP.NET MVC 4 小项目开发总结项目很小,就是一个企业站的前后台,主要包括新闻模块、产品模块、视频模块、留言。没有什么技术上的难点,大部分就是CRUD操作。开始之前评估开发时间为4天,实际coding时间为3天,debug时间为2天,关于debug时间较长的问题,后面有较为详细的分析。所用技术和工具Visual Studio 2012ASP.NET MVC 4Entify Framework 5SqliteUploadify关于ASP.NET MVC 4相比MVC 3,个人感觉并没有太大的变化,也许是一些新特性没有用到。debug花费时间分析除开没有后台页面等其他因素,自身原因分析如 阅读全文
-
Custom Action Method Selector in MVC
摘要:Custom Action Method Selector in MVChttp://www.codeproject.com/Articles/291433/Custom-Action-Method-Selector-in-MVCIntroductionThe default routing algorithm for how the ASP.NET MVC framework invokes actions is like {controller}/ {action}/ {id} patterns.But this becomes more complex when you have two 阅读全文
-
使用 ASP.NET MVC 4, EF, Knockoutjs and Bootstrap 设计和开发站点 - 3
摘要:使用 ASP.NET MVC 4, EF, Knockoutjs and Bootstrap 设计和开发站点 - 3原文地址:http://ddmvc4.codeplex.com/原文名称:Design and Develop a website using ASP.NET MVC 4, EF, Knockoutjs and BootstrapPart 1: 创建 Web Application (Knockout.js, Asp.Net MVC and Bootstrap): 前端设计在开始 UI 部分之前,我们先看一下在 ASP.NET MVC4 中使用 Knockoutjs 和 Boot 阅读全文
-
构建一个真实的应用电子商务SportsStore(八)
摘要:使用MVC4,Ninject,EF,Moq,构建一个真实的应用电子商务SportsStore(八)我们喜欢使用session state在Cart控制器中存储和管理我们Cart对象,但是我们不喜欢这种做事的方式,而且那些基于action方法参数的应用模块也不适用这种方式,我们无法测试控制器类,除非我们Mock基类的Session参数,这就意味着要mock整个控制器类和我们所有需要的东西,这太不现实了。为了解决这个问题,我们就必须使用MVC的另一个重要特性Model binders,MVC框架使用Model binding从Http请求中创建C# 对像,传递给action方法作为参数,我们现在就 阅读全文
-
ExtJs + .NET MVC 不分页处理大数据
摘要:ExtJs + .NET MVC 不分页处理大数据刷微博已经成为大家的一种生活方式,我今天要介绍的功能就很类似刷微博。当我们需要将大数据(比如百万条数据)显示在页面上的时候,显然一次加载是不现实的,用户体验很差。当然,你可能会想到采用分也显示,但是现在的用户已经厌倦了分页的方式,他们更喜欢刷微博的方式。于是就出现了这篇文章。笔者近期的项目中,采用的前端框架是ExtJs,其提供的GridPanel足以应付一次性加载500+以上的记录,只是会让用户等待一会。但是日志的显示没那么简单,其数据一直在增加,用户也不想分页查看,而是用传统的GridPanel也不太适合。Google之后,原来ExtJs已经 阅读全文
-
构建一个真实的应用电子商务SportsStore(七)
摘要:构建一个真实的应用电子商务SportsStore(七)我们的项目进展相当的不错,但是现在还不能真正的出售商品,因为我们没有为顾客提供购物车。今天,我们就加入购物车的功能,毕竟赚钱才是赢道理啊!购物车的逻辑看起来应该像这样:我们需要在每件商品的旁边都加一个"Add to cart”的按钮,客户可以随时的添加自己选择的商品。现在就让我们到Domain工程的Entities文件夹去添加一个Cart类吧:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System. 阅读全文
-
构建一个真实的应用电子商务SportsStore(六)
摘要:构建一个真实的应用电子商务SportsStore(六)添加Navigation控件上篇我们已经对UI部分做了整理,但是我们网站看起来仍然很奇怪,因为用户无法选择他们想看的商品类别,必须要一页一页的浏览,直到找到自己想要买的东西。我经常在网上浏览一些技术站点,并添加他们到我的收藏夹,但收藏夹里的条目太多了,还是不能方便的找到自己想看的网址,偶然发现了一个网站,叫做开发者导航(http://www.devseek.net),它收录了我所需要的所有网址,这正是我想要的,于是我今天也用这个导航的字眼,来为我们的网站添加一个分类过滤的功能。我们今天的内容主要有三个部分:1.增强ProductContro 阅读全文
-
asp.net mvc 4多级area实现技巧
摘要:asp.net mvc 4多级area实现技巧今天在工作要实现这个多级area。其原因是这个项目需要多级的功能,大的类别里有小的类别,小的类别里有具体的功能项,每一个功能项还有若干动作Action,所以在菜单和mvc工程的结构上都需要有体现多级的元素,菜单是用的accordion,每一个大类就是accordion的一个pane,然后每一个小类就是用一个表格来表示的,每一个功能就是用单元格加一个链接来表示的。在网站目录结构上,area可以很方便地实现一级的目录结构,比如可以有admin, backoffice, logging, business reporting等area, 每一个area下 阅读全文
-
构建一个真实的应用电子商务SportsStore4
摘要:构建一个真实的应用电子商务SportsStore(四)上篇中,我们将数据库中的数据显示到了 UI上,在这里我要强调一点,在上篇中我们应用了强类型的View,不要与model业务混淆,有关强类型view的知识点,不在本实例范畴之内,请参阅相关文档。对于任何一个电子商务网站来说,都需要使用户能方便的浏览所有的商品,并能够从一页迁移到另一页,这是个非常实用、也非常基本的功能,但在MVC4中,怎么实现它呢,现在就让我们一步一步的完善这个功能。首先,我们要为我们的Product控制器的List 方法添加一个参数,用它来代表浏览的页号,代码如下:using System;using System.Coll 阅读全文
-
构建一个真实的应用电子商务SportsStore3
摘要:上篇中我们已经展示数据到View, 但是这些数据都是来自于我们的mock IProductRepository,在我们真正的实现repository之前,我们需要创建一个SQLServer数据库并添加一些数据。我们将使用EF框架操作SQL Server数据库, EF是一个.net ORM框架,ORM框架能让我们想操作对象实例一样操作数据库的表、列、行。就像使用正常的C#对象,这么做需要一点Linq的知识,Linq不是什么神秘的、高难的东西,相信所有人都能够在想当短的时间内掌握并使用LInq。点击View菜单,打开服务器资源管理器,点击连接到数据库。你会看到连接对话框,设置服务器名为(local 阅读全文
-
使用MVC4,Ninject,EF,Moq,构建一个真实的应用电子商务SportsStore
摘要:使用MVC4,Ninject,EF,Moq,构建一个真实的应用电子商务SportsStore(一)如果你已经准备好了开始MVC4的远航,那我们就闲话少说,背起行装,踏上征途吧!完成SportsStore电子商务平台,你将学会:1.使用MVC4开发你的应用项目.2.使用Ninject完成IOC注入.3.使用Entity Framework 操作Sql server 数据库.4.使用Moq测试你的项目。好了,现在请启动你的VS2012吧!我们首先要创建的是一个空的Visual Studio solution。在这个solution中,我们将创建3个工程。1. 一个域模块工程。2.一个MVC4应用。 阅读全文
-
对特定域名限制匿名访问
摘要:对特定域名限制匿名访问这个需求有点怪异?确实很中国特色!我有个网站,绑定了几个域名,其中主域名不想开放匿名访问,因为强大的无所不能的GFW和网监会时刻盯着你,让你不得安宁,其他副域名么就无所谓了,封了就封了,于是就有这个需求出来了。网站是基于MVC4做的,所以最简单的思路就是基于Action Filter(http://www.asp.net/mvc/tutorials/older-versions/controllers-and-routing/understanding-action-filters-cs)自定义一个ActionFilterAttribute,增加一个Domains的属性, 阅读全文
-
MVC下Log4Net的配置和使用
摘要:MVC下Log4Net的配置和使用对于网站来讲,我们不能将异常信息显示给用户, Log4Net用来记录日志,可以将程序运行过程中的信息输出到文件,数据库中等地方,可以通过日志查看系统的运行过程,发现系统的问题。log4net的使用步骤如下: 1.添加对log4net.dll的引用。 2.在配置文件中添加配置。如下是在web.config的配置: 在configSections下节点配置为:<!--日志的配置--> <section name="log4net" type="log4net.Config.Log4NetConfigurationSe 阅读全文
-
在 ASP.NET MVC4 中使用 NInject
摘要:在 ASP.NET MVC4 中使用 NInjectNinject是一个快如闪电、超轻量级的基于.Net平台的依赖注入框架。它能够帮助你把应用程序分离成一个个松耦合、高内聚的模块,然后用一种灵活的方式组装起来。通过使用Ninject配套你的软件架构,那么代码将会变得更加容易编写、重用性强、易于测试和修改。MVC4 配合 Ninject 3 更是如虎添翼。1.问题场景在 MVC 的开发中,我们通常会使用到后台的数据,比如说需要获取一个后台的信息。通常会定义一个访问信息的接口,然后,有一个类实现了这个接口。public interface IMessageProvider{ string G... 阅读全文
-
Unity的应用及三层代码
摘要:Unity的应用及三层代码最近要做一个项目,和国外的架构师聊过之后。对方提到了他准备采用asp.net mvc, jquery, Unity 等技术来代替老的技术: 如asp.net web form. 他请我帮他想一些关于架构的东西。一直以来,关于asp.net mvc应用的架构,有一些想法。正好借这个机会写出来。资深的人士可能已经知道了,就当是复习吧。欢迎发表意见。指出不足。Unity的应用Unity出来已经有几年了。早几年的1.2版就可以实现这里所说的功能。目前最新稳定版是2.1。正在开发的3.0也许会给我们带来更强大的功能。这里写的是如何利用Unity实现aop, 降低代码的耦合程度。 阅读全文
-
ASP.NET MVC经典项目ProDinner项目解析3
摘要:ASP.NET MVC经典项目ProDinner项目解析(3)三、Data层解析这一层主要是和数据库相关联的, 所以这一层直接关系到应用程序的健壮性。最近在各个渠道都在提大数据这个概念,大数据高并发,尤其是facebook倡导的基于java应用的Hadoop框架, 如火如荼, 也从各个层面得到这样的消息或者说法, net在大数据高并发处理上比不上java, 这点我暂时不去评论他, 但是EF框架无法处理大数据, 我还是需要保留个人观点的。因为某些架构师自身对EF框架的不熟悉而对次妄加评论。我相信Code First模式是处理大数据的一个很好的方式。当然,基于EF框架的大数据或者说基于NET框架这 阅读全文
-
mvc3之自定义类实现路由配置和URL的生成
摘要:mvc3之自定义类实现路由配置和URL的生成在mvc中路由的配置,直接关系着我们的请求访问的控制器和方法;url对seo有着重要作用,全靠mvc内部定义的配置路由和生成url的方法在有的时间是不够的,本文就来了解一下自定义配置路由和url的生成。一、RouteBase类简介在新建一个mvc项目后,打开global文件,可以看到路由的注册是使用一个RouteCollection类型的参数来实现的。按F12转到定义会发现,其继承了Collection<RouteBase>,除了一些MapRoute等一些方法之外还有一个Add方法,其签名为: public void Add(strin. 阅读全文
-
ASP.NET MVC动态二级域名及ASP.NET管道机制
摘要:ASP.NET MVC动态二级域名及ASP.NET管道机制动态二级域名的实现:应用场景:目前产品要实现SaaS功能,因为工作需要实现二级域名:www.{CompanyUrl}.xxx.com假设产品主域名入口为:www.xxx.com当a公司租户登录时:www.a.xxx.com当b公司租户登录时:www.b.xxx.com首先想到的是对Url的重写:(网上有关于UrlRewrite的实现。在ASP.NET中这也是常用的手法。)Route简介:ASP.NET路由可以不用映射到网站特定文件的URL.由于该 URL 不必映射到文件,因此可以使用对用户操作进行描述因而更易于被用户理解的 URL。.N 阅读全文
-
业务逻辑层的封装
摘要:ASP.NET MVC+EF框架+EasyUI实现权限管系列(4)-业务逻辑层的封装 ASP.NET MVC+EF框架+EasyUI实现权限管系列(开篇)(1)(2)(3)(4) 前言:前面几篇博客我们基本已经介绍完了搭建整个项目和数据库访问层以及一些业务逻辑层的实现,当然了,我们的数据库访问层这样还是可以在进行封装的,但是我到这里就行了吧,项目也不大,不需要那么麻烦的,那么我们今天开始介绍我们需要介绍的内容,那就是我们对业务逻辑的封装,这个博客如果大家要看的话,我建议从第一张开始看是最容易理解的,废话不多说了,我们直接切入主题。1. 初步设计业务逻辑层 (1) 从昨天我们对LYZJ.... 阅读全文