场景

ASP.NET中MVC添加Controller以及访问其Action:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106796402

在上面新建完Controller并请求方法时返回的是string类型的字符串。

如果要返回一个View要怎么办。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

新建View

上面在新建Controller时会在Views目录下新建相应的目录,这里是Hello,右击Hello,添加--带有视图的MVC5 视图页(Razor)

选择布局页,这里选择第一个,点击确定

然后取名字为Index.cshtml

建立完之后

添加之后的View可以直接右键选择在Page Inspector中查看和在浏览器中查看

如果选择了在Page Inspector中查看

这里可以使用Razor引擎进行页面设置

Razor引擎

Razor 是一种允许您向网页中嵌入基于服务器的代码(Visual Basic 和 C#)的标记语法

当网页被写入浏览器时,基于服务器的代码能够创建动态内容。在网页加载时,服务器在向浏览器返回页面之前,会执行页面内的基于服务器代码。由于是在服务器上运行,这种代码能执行复杂的任务,比如访问数据库。

Razor在减少代码冗余、增强代码可读性和VS智能感知方面,都有着突出的优势。 Razor一经推出就深受所有ASP.Net开发者的喜爱。

使用Razor的语法就是在@{}之间编写C#逻辑变量,然后就可以通过@调用比如在上面新建的Index.cshtml

@{Layout = "~/Views/Shared/_Layout.cshtml";
}@{var name = "霸道的程序猿";
}
<p>公众号:@name</p>

然后上面的代码就是声明一个string 变量叫name.然后在下面的p标签中调用。

View解析

上面新增的view的布局文件的位置在Views下Shared目录下_Layout.cshtml

在这里就可以对布局文件进行修改。

上面我们新建的View页面的名字时Index.cshtml,这里的名字要与Controller下的Action即方法名对应

Controller中的方法为

    public class HelloController : Controller{//// GET: /Hello/public ActionResult Index(){return View();}}

运行项目这里就可以通过

http://localhost:2730/Hello/Index

访问到Index这个View

Controller向View传递参数

在Controller中新建一个Action,并传递两个参数,其中这两个参数有默认值,即没有参数传递时的值

        public ActionResult Welcome(string name = "公众号:霸道的程序猿",int count = 3){ViewBag.Name = name;ViewBag.Count = count;return View();}

然后在Views下新建一个View与Welcome同名

@{Layout = "~/Views/Shared/_Layout.cshtml";
}<h2>Welcome</h2>
<ul>@for (int i = 0; i < ViewBag.Count; i++){<li>@ViewBag.Name</li>}
</ul>}

然后运行项目在浏览器中输入

http://localhost:2730/Hello/Welcome

上面是使用默认参数的效果,下面传递参数,输入

http://localhost:2730/Hello/Welcome?name=badao&&count=5

ASP.NET中添加View与Razor引擎以及View解析和Controller向View传值相关推荐

  1. ASP.Net中自定义Http处理及应用之HttpModule篇

    HttpHandler实现了类似于ISAPI Extention的功能,他处理请求(Request)的信息和发送响应(Response).HttpHandler功能的实现通过实现IHttpHandle ...

  2. ASP.NET中利用ashx实现图片防盗链

    盗链的危害我就不说了,网上有很多. 直接分析盗链原理:看下面用httpwatch截获的http发送的数据 GET /Img.ashx?img=svn_work.gif HTTP/1.1 Accept: ...

  3. asp.net 中配置 FreeTextBox详解

    FreeTextBox 是一个开源的服务器控件.我们可以轻松地将其嵌入到 Web Forms 中实现HTML内容的在线编辑.如图所示: 这就是我们在网页上编辑文字时经常使用的东西. 用asp.net做 ...

  4. ASP.NET MVC的Razor引擎:IoC在View激活过程中的应用

    在<ASP.NET MVC的Razor引擎:RazorView>介绍BuildManagerCompiledView的时候,我们谈到默认使用的ViewPageActivator使用当前注册 ...

  5. asp.net mvc3 Razor引擎中@使用规则小记

    项目中前台用的是asp.net mvc3,Razor引擎(关于Razor的介绍可以参考:http://weblogs.asp.net/scottgu/archive/2010/07/02/introd ...

  6. 007.Adding a view to an ASP.NET Core MVC app -- 【在asp.net core mvc中添加视图】

    索引: 目录索引 Adding a view to an ASP.NET Core MVC app 在asp.net core mvc中添加视图 2017-3-4 7 分钟阅读时长 本文内容 1.Ch ...

  7. 体验 ASP.NET Core 1.1 中预编译 MVC Razor 视图

    这是从 ASP.NET Core 1.1 官方发布博文中学到的一招,可以在 dontet publish 时将 Razor 视图编译为 .dll 文件. 需要在 project.json 中添加如下配 ...

  8. 通过源代码研究ASP.NET MVC中的Controller和View(二)

    通过源代码研究ASP.NET MVC中的Controller和View(一) 在开始之前,先来温习下上一篇文章中的结论(推论): IView是所有HTML视图的抽象 ActionResult是Cont ...

  9. ASP.NET 5系列教程 (四):向视图中添加服务和发布应用到公有云

    向视图中添加服务 现在,ASP.NET MVC 6 支持注入类到视图中,和VC类不同的是,对类是公开的.非嵌套或非抽象并没有限制.在这个例子中,我们创建了一个简单的类,用于统计代办事件.已完成事件和平 ...

最新文章

  1. python 没反应 生成exe_通过 pyinstaller 将 python 脚本打包成可执行程序!
  2. IE下的li有空白问题
  3. 百度二面:一个线程OOM了,其它线程还能运行吗?
  4. python详细安装教程3.7.0-Linux 安装Python3.7.0
  5. robotframe使用之时间控件
  6. java深拷贝和浅拷贝_Java 深拷贝浅拷贝 与 序列化
  7. 丁磊:阿里网易员工很多是夫妻
  8. 机器学习霸占高薪榜、区块链偃旗息鼓?2020 年软件工程师状况解读!
  9. 小学计算机图形组合教案,小学三年级信息技术下册组合图形名师公开课优质教案人教版...
  10. npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! taoism@1.0.0 dev: `webpack-dev-server --inline --
  11. Verilog设计参数化的译码器与编码器,以及设计4位格雷码计数器
  12. The Operation couldn't be completed.(LaunchServicesError error 0.) 的解决方法
  13. python数据可视化方法和库
  14. 如何删除win10更新文件并彻底解决win10自动更新问题?
  15. 2021年烷基化工艺考试题及烷基化工艺多少钱
  16. 今日科技联播:滴滴5000亿上市计划或受影响,高德地图暂时下线顺风车业务
  17. PDF 格式的文件编辑难度非常大, 相比 DOCX 格式,它存在的意义是什么?
  18. python古典问题兔子问题_古典兔子问题
  19. WEB超大文件上传与下载
  20. Learning Synergies between Pushing and Grasping with Self-supervised Deep Reinforcement Learning

热门文章

  1. java 一年 周数_在java,如何找到一年的总周数?_java_酷徒编程知识库
  2. java json自定义_java返回json设置自定义的格式
  3. emc整改措施及案例_12.5EMC一点通||EMC整改措施
  4. 9-Qt6 QString和QChar
  5. 小米4c手机显示无服务器,小米4c的出现让小米2S用户终于找到换手机的理由! _手机资讯...
  6. linux vim(gvim) 多标签页,Vim 的标签页功能
  7. sv队列和动态数组的区别_systemverilog学习(4)动态数组
  8. ssh登录远程服务器_设置iTerm2免密登陆ssh远程服务器
  9. php超链接访问,怎么给一个PHP密码访问页面加超链接
  10. python必学_Python必学框架