MVC ASPX(webForm)视图引擎 <%:%> 与<%=%>的差别
2014-10-10 12:58
204 查看
控制器
视图
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace MvcApplication2.Controllers { public class HomeController : Controller { // // GET: /Home/ public ActionResult Index() { ViewData["Script"] = "<script>alert('Dome')</script>"; return View(); } } }
视图
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %> <!DOCTYPE html> <html> <head runat="server"> <meta name="viewport" content="width=device-width" /> <title>Index</title> </head> <body> <div> <!-- 假设用=号的话,就是原封不动的输出ViewData["Script"]中的代码,这样easy遭到跨站脚本的攻击,不够安全,所以这里是弹出一个对话框吗,对话框内容为Dome--> <%=ViewData["Script"] %> <!--<%: %>相当于<%=Html.Encode(<script>alert('Dome')</script>) %> 推荐大家用冒号,这里输出的是<script>alert('Dome')</script>--> <%:ViewData["Script"] %> <!--假如说我如今就是想在前台页面输出一些Html标签,或一些代码,就想让它原封不动的去运行那段代码,比方说我如今就想给一个Div标签放到页面去,怎么办呢,下面三种方法都能够,并且不用=号更安全--> <%:Html.Raw("<div>我是div标签</div>") %> <%:new HtmlString("<p>我是p标签</p>") %> <%:new MvcHtmlString("<p>我也是p标签</p>") %> </div> </body> </html>
相关文章推荐
- MVC ASPX(webForm)视图引擎 <%:%> 与<%=%>的区别
- <? extends T>和<? super T> 差别
- <context-param>与<init-param>的差别与作用
- <Button>按钮点击变换,<EditText>组建功能,<TditView>文本跑马效果,滚动视图
- <<Oracle数据库性能优化艺术(第五期)>> 第13周 性能视图和性能参数
- <iOS>视图添加手势不会retain当前视图
- < input >里name和id的差别
- <转>文档视图指针互获
- <<AI入门(6)>>(C)
- <<展现C#>> 前言(补充) 和第三章 第一个C#程序(修订)
- <<AI入门(5)>>(C)
- <<AI入门(9)>>(C)
- <<AI入门(10)>>(C)
- <<葵花宝典>>2000黄金版 RLE Sprite指南
- <<展现C#>> 第八章 用C#写组件(修订)
- <<展现C#>> 第七章 异常处理(修订)
- <<展现C#>>第六章 控制语句(修订)
- <<展现C#>> 第五章 类(修订)
- <<展现C#>>第四章 C#类型(修订)
- vs2005中使用'查找和替换'将 (&lt;link &gt;) 替换为 (&lt;link /&gt;)