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. myeclipse中的classpath .

    博客分类: java基础   myeclipse中的classpath是一个很重要的问题 myeclipse的在查找的时候都是按照其查找,而且myeclipse有一个专门的文件来保存classpath ...

  2. Flume的监控参数

    参考 flume的http监控参数说明 普通的flume启动命令 bin/flume-ng agent -c conf -f conf/flume-conf.properties -n agent - ...

  3. MonoDevelop ctrl + ' 不能定位正确的unity文档

    Just Do This I had the same problem in MonoDevalop, but the url in it cannot be changed. So I tried ...

  4. 1.9flask sqlalchemy和wtforms

    2019-1-9 15:28:07 还有2天视频flask结束,然后到爬虫了 发现好快 学的东西好多! 到时候来个综合整理!!!! 越努力,越幸运!!! sqlalchemy 参考连接: https: ...

  5. 8 Oracle语句

    1.select name from v$datafile; 用sys方式登陆,查询所有表空间存放的物理路径 2.create tablespace DEMO_TBS datafile 'D:/TBS ...

  6. juqery 给本身的class加上一个class 或也可以实现关注商品,取消关注商品

    $("#goods1").on("click",".ICON-fen-LOVE",function(){ var $this = $(thi ...

  7. Oracle实验手册

    oracle安装 安装virtualbox: # yum install gcc kernel-devel kernel-headers # yum install virtualbox-5.... ...

  8. CentOS使用systemctl daemon-reload报错Error getting authority: Error initializing authority: Error calling StartServiceByName for org.freedesktop.PolicyKit1: Timeout was reached (g-io-error-quark, 24)解决办法

    CentOS修改了系统启动文件后需要重载报错 systemctl daemon-reload Error getting authority: Error initializing authority ...

  9. linux之tail和head的使用

    tail 基本介绍 用于显示文件的结尾的内容.在默认情况下,taild命令显示文件的后10行内容 表达式 tail [options] [filenames] 常用参数 -c:输出最后N个字节 -f: ...

  10. python3 使用libvirt 相关安装

    1.Linux下有Python2的环境下安装Python3参考: https://www.cnblogs.com/kimyeee/p/7250560.html 2.安装完Python3后,将/usr/ ...