Razor 视图引擎

与Aspx开发区别在于代码:

  1、Razor 更智能,摒弃了<%%>格式,直接用@符号开启cs代码,遇到html时自动识别

  2、遇到如汉字等即非cs代码,又非html代码就无法识别,由“@:”或“<text></text>”来输出

Razor格式:

  1、基本代码以“@”开启cs代码,一行内为cs代码

  2、“@{}”表示花括号内都是cs代码

  3、“@:”或“<text></text>”输出文本

  4、“@()”括号内内容转化为代码

一、新建Razor视图引擎

二、输出当前时间,并判断上午或下午

@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
@DateTime.Now.ToString("yyyy年MM月dd日");<br />
@if (DateTime.Now.Hour > )
{
@:下午
}
else
{
<text>上午</text>
} </body>
</html>

Razor展示时间

三、展示数据:

//主页展示数据
public ActionResult Index()
{
using (Data0928DataContext con = new Data0928DataContext())
{
List<Users> ulist = con.Users.ToList();
ViewBag.Users = ulist;
} return View();
}

动作代码

@{
Layout = null;
}
@using MvcApplication2.Models; <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body> <table style="width: 100%; text-align: center;" cellpadding="" cellspacing="" border="">
<tr style="background-color: navy; color: white;">
<td>编号</td>
<td>用户名</td>
<td>密码</td>
<td>昵称</td>
<td>性别</td>
<td>生日</td>
<td>民族</td>
</tr>
@{
List<Users> ul = ViewBag.Users as List<Users>;
foreach (Users u in ul)
{
<tr>
<td>@u.ids</td>
<td>@u.username</td>
<td>@u.password</td>
<td>@u.nickname</td>
<td>@(u.sex.Value?"男":"女")</td>
<td>@u.birthday.Value.ToString("yyyy年MM月dd日")</td>
<td>@u.nation</td>
</tr>
} }
</table> </body>
</html>

View层代码

四、修改时,男女默认选中方法

方法一:

@:性别:

        <input id="ra1" type="radio" name="sex" value="True" @(u.Sex.Value ? "checked=\"checked\"" : "") /><label for="ra1">男</label>
<input id="ra2" type="radio" name="sex" value="False" @(u.Sex.Value ? "" : "checked=\"checked\"") /><label for="ra2">女</label> <br />

男或女默认选中

方法二:

 @:性别:
@
if (u.Sex.Value)
{
<input id="ra1" type="radio" name="sex" value="True" checked="checked" /><label for="ra1">男</label>
<input id="ra2" type="radio" name="sex" value="False" /><label for="ra2">女</label>
}
else
{
<input id="ra3" type="radio" name="sex" value="True" /><label for="ra3">男</label>
<input id="ra4" type="radio" name="sex" value="False" checked="checked" /><label for="ra5">女</label>
}

男或女默认选中

五、修改时,下拉列表

<select name="nationc">
@{
List<Nation> nnlist = ViewBag.xixi as List<Nation>; foreach (Nation n in nnlist)
{
<option @( n.NationCode == u.Nation ? "selected=\"selected\"" : "") value="@n.NationCode">@n.NationName</option>
}
}
</select>

下拉列表代码

★六、系统自动生成路径 - 参数:1、文字 2、动作+参数 3、控制器

@Html.ActionLink("修改", "Update/" + u.UserName, "Home");

★七、form表单格式 - 参数:1、动作 2、控制器

@{
  using (Html.BeginForm("Update1", "Home"))
  {
  }
}

★八、JS生成路径

<script>
document.getElementById("aaa").value = '@Url.Action("wa", "Home")';
</script>

C#-MVC-Razor视图引擎及解决路径问题的三个方法的更多相关文章

  1. ASP.NET MVC——Razor视图引擎

    Razor是MVC框架视图引擎,我们今天就来说一说Razor视图引擎. 首先还是来创建一个基础项目叫Razor来演示. 先来定义一个Model叫Product public class Product ...

  2. ASP.NET MVC Razor视图引擎攻略

    --引子 看下面一段MVC 2.0的代码. <%if (Model != null){%> <p><%=Model%></p><%}%>&l ...

  3. ASP.NET WEB应用程序(.network4.5)MVC Razor视图引擎2 视图模板页

    https://www.cnblogs.com/xlhblogs/archive/2013/06/09/3129449.html MVC Razor模板引擎 @RenderBody.@RenderPa ...

  4. MVC Razor视图引擎

    Razor 不是编程语言.它是服务器端标记语言. Razor 是一种允许您向网页中嵌入基于服务器的代码(Visual Basic 和 C#)的标记语法 当网页被写入浏览器时,基于服务器的代码能够创建动 ...

  5. ASP.NET WEB应用程序(.network4.5)MVC Razor视图引擎2

    https://www.bbsmax.com/A/gAJG67OXzZ/ 在MVC3.0版本的时候,微软终于引入了第二种模板引擎:Razor.在这之前,我们一直在使用WebForm时代沿留下来的ASP ...

  6. ASP.NET WEB应用程序(.network4.5)MVC Razor视图引擎2 HtmlHelper-超链接方法

    一.@Html.ActionLink()概述 在MVC的Rasor视图引擎中,微软采用一种全新的方式来表示从前的超链接方式,它代替了从前的繁杂的超链接标签,让代码看起来更加简洁.通过浏览器依然会解析成 ...

  7. ASP.NET WEB应用程序(.network4.5)MVC Razor视图引擎2 动态数据的呈现

    https://www.cnblogs.com/cynchanpin/p/7065098.html 在MVC3開始.视图数据能够通过ViewBag属性訪问.在MVC2中则是使用ViewData.MVC ...

  8. ASP.NET WEB应用程序(.network4.5)MVC Razor视图引擎2 视图引用资源

    https://www.cnblogs.com/Roxlin/p/5615144.html 一.配置BundleConfig.cs文件 1.首先要在App_Start 里面BundleConfig.c ...

  9. MVC Razor视图引擎的入门

    首先我们来说说他的给我们开发者带来那些好处吧: Razor语法易于输入,易于阅读,微软当时是这样定义的:简洁,富有表现力和灵活性,支持所有文本编辑器,强大的智能提示功能,单元测试. Rozor文件类型 ...

随机推荐

  1. featureCounts 软件说明

    featuresCounts 软件用于定量,不仅可以支持gene的定量,也支持exon, gene bodies, genomic bins, chromsomal locations的定量: 官网 ...

  2. 【Excel】读取CSV文本

    Option Explicit ' CSV形式テキストファイル(5カラム)読み込みサンプル Sub READ_TextFile() Const cnsTITLE = "テキストファイル読み込 ...

  3. [原]CentOS7安装Rancher2.1并部署kubernetes (三)---解决登录kubernets超时和部署测试Pod和Containter[nginx为例]

    ##################    Rancher v2.1.7  +    Kubernetes 1.13.4  ################ ##################### ...

  4. 解决FAT32格式U盘安装win10时0x8007000D错误

    问题由来 我一直使用U盘,UltraISO软碟通和msdn原版镜像来装系统.最近在把Win10 1709升级为1803时遇到了问题.同样也是使用UltraISO刻录镜像到U盘的方法安装的,这次从U盘启 ...

  5. [LeetCode] Group Anagrams 群组错位词

    Given an array of strings, group anagrams together. Example: Input: ["eat", "tea" ...

  6. hello 2019 D

    一开始sb了考虑总的因子疯狂T,做题太少了...没意识到会有辣么多因子... 神仙说1e9以内的最多的就有800个因子的了... 然后我们可以考虑质因子 我觉得已经说得很明白了... 唔逆元好像exg ...

  7. 4.express 框架

    express express 官网:http://expressjs.com/ 中文:http://www.expressjs.com.cn/ 库:jquery 一堆 的属性和方法 框架:expre ...

  8. Linux 下安装mysql 5.7

    Linux 下安装mysql 5.7 本人首次安装时按照菜鸟教程的步骤一步一步来的,结果意外的是 装成5.6了,而且各种无厘头的问题,例如无法启动... 本文参照 大佬:‘这个名字想了很久~’ 的&l ...

  9. C#遍历枚举(Enum)值

    foreach (object o in Enum.GetValues(typeof(EmpType))) { Console.WriteLine("{0}:{1}", o, En ...

  10. ERP项目实施记录09

    今天报价软件测试版本出来了,可看上去不怎么像是一款报价的软件,整个界面上都没有"报价"相关的字眼: 软件标题就不说了,反正影响不大,就当没看见,可左边这一大片菜单里也找不到和报价有 ...