• [ASP_NET_MVC] ASP.NET MVC 利用Razor引擎生成静态页
    实现原理及步骤: 1.通过ViewEngines.Engines.FindView查找到对应的视图,如果是部分视图,则用:ViewEngines.Engines.FindPartialView; 2.设置上下文对象里的Model; 3.调用视图的Render()方法,将渲染结果保存到物理静态文件; 代码如下: using System; using System.IO; using System.Text; using System.Web.Mvc; namespace Whir.Foundation.UI {     /// <summary>     ///     描述:静态页面生成帮助类     /// <... 阅读全文
  • [ASP_NET_MVC] 微信-网站 会员整合流程(会员同步登陆)
         认证了的服务号,可以实现用户点击微信3x5菜单,跳转到自己微网站,并实现用户自动登录的功能,即可以将微信粉丝与网站用户进行关联,把微信粉丝转换为网站会员。本文只描述大概的接入流程,具体实现代码因不同应用场景不同而不同,如需要代码参考,可以私信给我。zhangqs008@163.com    微信-网站 会员整合的大致流程如下图所示: 注意事项: 1.整合时,会使用到微信的网页身份授权接口功能,该功能只有认证了的服务号才具有,需在微信后台配置授权回调页面域名。 2.网页授权接口文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842&token=&lang=zh_CN 3.... 阅读全文
  • [ASP_NET_MVC] ASP.NET MVC3 从客户端中检测到有潜在危险的 Request.Form 值 的解决方法
    如果你使用的是.Net 3.5,MVC 2.0及更高的版本,那么可以在处理Post方法的Action添加一个特性:[ValidateInput(false)],这样处理就更加有针对性,提高页面的安全性。 如: [HttpPost] [ValidateInput(false)] public ActionResult CatalogEdit(Catalog model) { return View(); } 重要: 如果你使用的是MVC 3.0,那么你会发现做了以上的设置后还是无效。这是因为你还需要在web.config中做以下设置: <system.web > <httpRuntime requestValidationMode="2.0" / >... 阅读全文
  • [ASP_NET_MVC] ASP.NET 系统支持数据库访问设计
    系统设计时,往往要考虑到兼容多种数据库,拿常见的三种数据库:SqlServer,MySql,Oracle为例,常见的三层设计可以分为:业务逻辑层,数据访问层,实体层;他们的结构大致如下: 三种数据库对应有三套数据库访问类,为了方便组织代码,往往将读写一种数据库的类放到对应命名的文件夹下,代码结构大概如下: 业务逻辑层: 以上面的代码为例,业务逻辑层要调用数据访问层时,可以这样来实例化数据库访问对象:var db = DbFactory.GetService<IAdministrator>(); 数据访问层: 关键点在于如何动态实例化数据库访问对象,即上面的DbFactory.GetService方法如何实现。 using System; using System.Configuration; usi... 阅读全文
  • [ASP_NET_MVC] ASP.NET MVC使用AuthorizeAttribute做身份验证操作
    using System; using System.Web; using System.Web.Mvc; using Whir.Framework.Helper; namespace Whir.Foundation.Attribute.Authorize {     /// <summary>     ///     后台管理身份认证     /// </summary>     public class AdminAuthorizeAttribute : AuthorizeAttribute     {         /// <summary>       &... 阅读全文
  • [ASP_NET_MVC] 自定义ASP.NET MVC Html辅助方法
    在ASP.NET MVC中,Html辅助方法给我们程序员带来很多方便,其重要性也就不言自明。有时候,我们不想重复地写一些HTML代码,或者MS没有提供我们想要的那个HTML标签的Html辅助方法,那么,我们就可以通过自己定义一个Html扩展方法来达到这个目的。 比如,到目前为止,Html扩展方法中没有关于<input type="file" />这类标签的辅助方法,那么我们就可以自已实现一个。本文以实现<input type="file" />标签为例,演示如何实现自定义Html扩展方法。 一、实现自定义弱类型Html扩展方法 其实实现自定义Html扩展方法并不难,有兴趣的同学可以去看下MVC源代码,关于Html扩展方法部分。要用到System.Web.Mvc命名空间下的TagBuilder类,MvcHtmlString类。TagBu... 阅读全文
  • [ASP_NET_MVC] 使用Areas分离ASP.NET MVC项目
    为什么需要分离? 我们知道MVC项目各部分职责比较清晰,相比较ASP.NET Webform而言,MVC项目的业务逻辑和页面展现较好地分离开来,这样的做法有许多优点,比如可测试,易扩展等等。但是在实际的开发中,随着项目规模的不断扩大,Controller控制器也随之不断增多。如果在Controllers文件夹下面有超过两位数controller,即便采用良好的命名规范,或者用子文件夹的形式区分不同功能的控制器,还是会影响项目的可阅读性和可维护性。因此,在一些场景下,如果能把与某功能相关的文件分离到一个独立的项目中是非常有用的。Asp.Net MVC提供了Areas(区域)的概念达到这一目的。 一个典型的场景 Web应用通常会有前台(面向用户)和后台(面向管理员)两部分,我们希望以/locahost/Admin开始的URL都为后台管理地址,因此我... 阅读全文
  • 1
  • 共 7 条记录