MVC 4中的前端渲染 @Helper指令

如果我们需要在一个页面或多个页面显示如人民币格式(后台传回来的无¥)¥的格式化、或是对后台数据作如保留小数个数等处理,这些东西经常要用到,特别是一些NULL值的处理,有可能会出错。这时我们可以通过创建 一个.csHtml文件(当然你也可以以把方法写在要用的当前页面中),封装一个方法,

直接在各个用到的前端面面中调用就可以了。

先举一个 在本页面调用,且写在本页面的使用如下:

@{

Layout="~/Views/Shared/_Layout.cshtml" ;

}

@using  MyCon.User

@helper  Show()

{

<p style=“ color: red;”>@Model.Name</p>

}

// 调用

@ Show()          // 注意不要 ;

如果多个视图或模板都要调用,那我们可以定义一个.chhtml文件放在App_Code目录下,这个目录通常在项目的根目录下,这样项目内的所有视图或模板就都可以调用了。

下面:

在App_Code文件夹内添加一个Common.cshtml文件,并用@helper写好方法。

@helper DisplayPrice(Decimal pri)

{

if(pri==0)

{

<span>价格未定</span>

}

else

{

<span>@string.Format("{0:C2}",pic)</span>

}

}

@helper  ShowMessage(int value=0)

{

@:  I am @value

}

MVC 4中的前端渲染 @Helper指令,布布扣,bubuko.com

时间: 2024-10-03 22:41:50

MVC 4中的前端渲染 @Helper指令的相关文章

ASP.NET 5与MVC 6中的新特性

差点忘了提一句,MVC 6中默认的渲染引擎Razor也将得到更新,以支持C# 6中的新语法.而Razor中的新特性还不只这一点. 在某些情况下,直接在Web页面中嵌入某些JSON数据的方式可能比向服务端发起一次额外请求的方法更合适.在之前的版本中,实现这一点需要编写一些繁琐的映射代码,然后用某种JSON转换器对数据对象进行序列化,并将结果通过view model进行暴露.而在MVC 6中,以上所有的样板代码都可以简化为一句“@Json.Serialize(Model)”. 在实现图片缓存时,同样

找到MVC框架中前端URL与后端同步的解决方案

基本思路: 先用URL标签生成完整的URL字符,前端动态参数的部分以适配符先填充,最后动态参数利用正则匹配进行替换. 这种方式,可以在各种MVC框架中适用,妙. 不废话,上码. var url = "{url app=xxxxn&act=yyy&id=[0]}"; url = url.format({$id}); //String.format 同时匹配[](){}内容方式 if (!String.prototype.format) { String.prototype

asp.net MVC 框架中控制器里使用Newtonsoft.Json对前端传过来的字符串进行解析

下面我用一个实例来和大家分享一下我的经验,asp.net MVC 框架中控制器里使用Newtonsoft.Json对前端传过来的字符串进行解析. using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Web.Mvc; namespace MyWebApp.Controllers { public class TestController : Controller { public A

浅析Vue.js 中的条件渲染指令

1 应用于单个元素 Vue.js 中的条件渲染指令可以根据表达式的值,来决定在 DOM 中是渲染还是销毁元素或组件. html: <div id="app"> <p v-if="type===1">拌面</p> <p v-else-if="type===2">扁肉</p> <p v-else="type===3">其它</p> </div

前端渲染利器——JsRender入门

JsRender不少前端人员应该都用过,它是一个比较强大的模板,不牵涉太多技术依赖,使用起来非常舒服.我本人在前端开发中使用React之前,都是用的它了(实际上我感觉React没有JsViewes好用).不管怎么说,先来学习下JsRender技术吧,如果前端的开发环境比较单纯,还是很适合的. 一.JsRender特性 新一代的前端渲染模板 使用模板,可以预先自定义一些固定格式的HTML标签,在需要显示数据时,再传入真实数据组装并展示在Web页中:这避免了在JS中通过“+”等手动分割.连接字符串的

在Asp.net Razor Pages/MVC程序中集成Blazor

今天试了一下在Asp.net core Razor Pages/MVC程序中集成Blazor(Server-side),还是可以完美整合的,这里以Razor Pages为例(.net core 3.1),记录下相关过程. 1. 配置StartUp,添加Blazor服务 public void ConfigureServices(IServiceCollection services){    services.AddRazorPages();    services.AddServerSideB

ASP.NET MVC 3中的路由

准备发布新随笔,才发现草稿里还有几年前这篇烂了尾的,先放上来,有空再补完整吧-- (* 整理自<Pro ASP.NET MVC 3 Framework>学习笔记. *) 路由,正如其名,是决定消息经由何处被传递到何处的过程.也正如网络设备路由器Router一样,ASP.NET MVC框架处理请求URL的方式,同样依赖于一张预定义的路由表.以该路由表为转发依据,请求URL最终被传递给特定Controller的特定Action进行处理.而在相反的方向上,MVC框架的渲染器同样要利用这张路由表,生成

[渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署

这是微软官方SignalR 2.0教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第五篇:MVC程序中实体框架的Code First迁移和部署 原文:Code First Migrations and Deployment with the Entity Framework in an ASP.NET MVC Application 译文版权所有,谢绝全文转载--但您可以在您的网站上添加到该教程的

MVC项目中如何判断用户是在用什么设备进行访问

使用UAParser在C#MVC项目中如何判断用户是在用什么设备进行访问(手机,平板还是普通的电脑) 现在我们开发的很多web应用都要支持手机等移动设备.为了让手机用户能有更加好的用户体验,我们经常为手机设备专门准备一套前端的页面.这样当用户使用普通电脑来访问的时候,我们的应用就向用户展示普通电脑的页面.当用户使用手机等移动设备来访问我们的系统的时候,我们就向用户展示手机设备的页面.但是这时候另一个问题出现了.如何判断用户在使用什么设备访问我们的应用?是使用手机还是普通电脑? 网上能查到的不同的