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. Houdini技术体系 基础管线(四) :Houdini驱动的UE4植被系统 下篇

    背景 在上篇中,实现了使用Houdini在UE4里根据地形过程生成植被的最基本的原型.并且支持把植被在UE4里Bake成使用的HierarchicalInstancedStaticMeshCompon ...

  2. CleanAop使用笔记

    前言,本(ˇˍˇ) 想用PostSharp做case,但是破解不成功,所以在github里找了一个CleanAop 地址: https://github.com/Jarvin-Guan/CleanAO ...

  3. 我的海外购页面List

    <%@ page language="java" contentType="text/html;charset=UTF-8" %> <%@ t ...

  4. Android Adb命令查看包名信息

    Android O 8.1.0 data/system/packages.listdata/system/packages.xmldata/system/package-usage.listdata/ ...

  5. 给vscode添加右键打开功能

    将以下文本存为vscode.reg,然后运行: Windows Registry Editor Version 5.00  ; Open files [HKEY_CLASSES_ROOT\*\shel ...

  6. java 的访问权限控制

    package test06; public class PermissionModel { private int age; public String name; public int getAg ...

  7. python爬虫工具

    一直都听说python写爬虫工具非常方便,为了获取数据,我也要写点爬虫,但是python太灵活了,不知道python爬虫要哪些框架,要了解,比如beatiful soup,scrapy, 爬虫的额主要 ...

  8. vue2 在mounted函数无法获取prop中的变量的解决方法

    props: { example: { type: Object, default() { }, }, }, watch: { example: function(newVal,oldVal){ // ...

  9. 31、cookie小test

    请尽量使用JQuery进行代码编写,需求如下: 1.  页面初始化样式如图 2. 顶部input框中输入内容,按下回车enter键后,“正在进行” 列表中加入该条内容.   3. 顶部input框中输 ...

  10. 根据某个字段去重 根据另一个字段排序的一个SQL

    背景:一张表 有 name , crt_time , work_sts 三个字段 这张表里存在这样的数据 'a', '2018-12-18 21:37:24', '未''a', '2018-12-19 ...