Razor 在WebApp 框架的运用
前面有两章介绍了WebApp框架《WebApp MVC,“不一样”的轻量级互联网应用程序开发框架》和《WebApp MVC 框架的开发细节归纳》,其中视图引擎是用的Nvelocity,最近发现Razor不错,语法比较像C#,而且在VS IDE中有提示比较方便,更不错的是在CodePlex上已有人把Razor从aspx mvc中剥离出来独立的开源项目RazorEngine,立马就研究了一下并加入到框架中。
RazorEngine开源网址:http://razorengine.codeplex.com/
下面我们看看在Webapp 框架中使用Razor视图引擎的实例:


1.简单实例,hello worlod

2.Razor方法实例

使用关键字@helper 来创建方法aa,输出字符串hello 这里跟MVC中的Razor语法有点不一样,要想不报错得用@()把输入内容包括起来,这地方开始不知道老报错,最后调式源码才发现必须这样书写。
3.判断实例

4.循环实例

5.方法ToUrl和LoadJs




6.包含外部文件

7.后台TestController的代码
[AOP(typeof(HeadComponent), typeof(FooterComponent))]
public void Razortest01()
{
List<string> data = new List<string>();
data.Add("选项1");
data.Add("选项2");
data.Add("选项3");
ViewData.Add("data", data); ViewData.Add("name", "kakake");
ViewResult = ToView(@"Views\Test\test01.cshtml");
}
public class HeadComponent : AbstractRazorComponent
{
public override string GetFilePath()
{
return "Views/Test/head.cshtml";
} public override void LoadViewData()
{
ViewData.Add("head", "这是页头!");
}
}
public class FooterComponent : AbstractRazorComponent
{
public override string GetFilePath()
{
return "Views/Test/footer.cshtml";
} public override void LoadViewData()
{
ViewData.Add("footer", "这是页脚!");
}
}
界面效果:

总结:使用Razor确实让我们的代码看起来更加舒服,但是Razor在性能方面可能有点缺失。另外就是如果修改了cshtml文件需要退出服务重新编译项目运行,不然执行可能会出错。
Razor 在WebApp 框架的运用的更多相关文章
- WebApp 框架
Razor 在WebApp 框架的运用 前面有两章介绍了WebApp框架<WebApp MVC,“不一样”的轻量级互联网应用程序开发框架>和<WebApp MVC 框架的开发细节 ...
- webapp框架集合
1.GoAngualrjs homepage github GoAngular 可让你轻松使用 AngularJS 和 GoInstant 构建实时.多用户的应用程序. 2.JingleV home ...
- 转战WebApp: 最适合Android开发者的WebApp框架
随着移动端设备越来越多, 微信应用号即将发布, 越来越多的页面需要被移动浏览器承载, HTML5开发大热, 我们需要掌握Web开发的技能来适应时代变化. 合适的WebApp框架 AndroidUI4W ...
- 第5章——使用 Razor(MVC框架视图引擎)
Razor 是MVC框架视图引擎的名称. 本章提供 Razor 语法的快速教程,以使你能够识别 Razor 表达式. 本章不打算提供 Razor 的完整参考,而将其视为一个语法速成教程.在本书的后续内 ...
- ipad&mobile通用webapp框架前哨战
响应式设计的意义 随着移动设备的发展,移动设备以迅猛的势头分刮着PC的占有率,ipad或者android pad的市场占有率稳步提升,所以我们的程序需要在ipad上很好的运行,对于公司来说有以下负担: ...
- HTML5 webapp框架
1.Sencha Touch 注:jQTouch主要用于手机上的web Kit浏览器上实现一些包括动画.列表导航.默认应用样式等各种常见UI效果的 JavaScript 库.支持包括 iPhone.A ...
- 关于给予webApp框架的开发工具
webApp 1.phonegap webApp即基于html+css+javascript,对于新手会联想好多及疑问(如数据的添删查修如何实现,参数传递如何实现) 添加查修使用jsonp跨域实现的 ...
- WebApp框架
我所知道的webapp开发框架,欢迎补充, Framework7包含ios和material两种主题风格并且有vue版和react版, vue发现一个vue-material, react有一款mat ...
- 基于Vue2 搭建移动端 webapp 框架
Vue.js2.0作为国内热门并广为人知的前端框架,其与其他主流框架的优势在此不做过多赘述.搭建框架步骤如下: 转自:http://www.jianshu.com/p/beae26e57b0f 安装N ...
随机推荐
- [BTS] The value "" for the property InboundId is invalid
Microsoft.ServiceModel.Channels.Common.MetadataException: Retrieval of Operation Metadata has failed ...
- Nginx - Windows下Nginx初入门
公司刚使用nginx,预先学习下.鉴于机器没有Linux环境,在Windows熟悉下. 下载 目前(2015-07-11),nginx的稳定版本是1.8.0,在官网下载先,windows版的nginx ...
- atitit. web 在线文件管理器最佳实践(1)--- elFinder 的使用流程解决之道 。打开浏览服务器文件夹java .net php
atitit. web 在线文件管理器最佳实践(1)--- elFinder 的使用流程解决之道 .打开浏览服务器文件夹java .net php 1. 环境:::项目java web,需要打开浏览服 ...
- 电影成生活O2O必争之地,破局之战就此拉开
这一次的两会过后,互联网最流行的一个词恐怕当属“互联网+”.尤其是总理关于“以互联网为载体.把线上线下互动的新兴消费搞得红红火火”的一席话,更是让国内的O2O从业者兴奋不已.百度李彦宏在两会接受记者采 ...
- Maven学习总结(一副本)——Maven配置和搭建
环境准备: JDK 1.6 Maven 3.0.4 myeclipse 8.6.1 安装 Maven 之前要求先确定你的 JDK 已经安装配置完成.Maven是 Apache 下的一个项目,目前最新版 ...
- 详解Bootstrap列表组组件
列表组可以用来制作列表清单.垂直导航等效果,也可以配合其他的组件制作出更漂亮的组件,列表组在bootstrap框架中也是一个独立的组件,所以也对应有自己独立源码: LESS:list-group.le ...
- memset与malloc性能测试
memset与malloc性能测试 测试环境:2.2GHZ.2G内存 memset一段大小为1K的buf,每秒有1200万次:10K的buf,每秒有260万次:100K的buf,每秒有13万次. ma ...
- NEWS - InstallShield 2013 SP1发布
2013的这个国庆假期期间,InstallShield厂商Flexerasoftware(中文名:福莱睿)发布了最新版本InstallShield 2013的SP1,由于这个升级包带来一些新的技术支持 ...
- 从一个例子中体会React的基本面
[起初的准备工作] npm init npm install --save react react-dom npm install --save-dev html-webpack-plugin web ...
- iPhone开发视频教程 Objective-C部分 (51课时)
第一.二章 OC基础语法 iPhone开发教程 第一章 OC基础语法 iPhone开发概述-必看(1.1)http://www.apkbus.com/android-102215-1-1.html ...