网站广告下悬浮代码怎么做,wordpress安全教程,wordpress付款,免费活动网MVC提供了两种不同的视图引擎#xff1a;Razor视图引擎、Web Forms视图引擎。 
1.代码表达式 
1.1 转换字符#xff1a;核心转换字符#xff0c;用作标记代码之间相互转换的字符。 
1.2 两种基本转换#xff1a;代码表达式、代码块。都是求出值#xff0c;再写入响…MVC提供了两种不同的视图引擎Razor视图引擎、Web Forms视图引擎。 
1.代码表达式 
1.1 转换字符核心转换字符用作标记代码之间相互转换的字符。 
1.2 两种基本转换代码表达式、代码块。都是求出值再写入响应中。 
hlitems.Length/hl
----------------------
{ string testMyAPP;}
span(test).Models/span
spanMyApp.Models/span 2.HTML编码 
视图显示用户的输入等信息存在XSS跨站脚本注入攻击。 
2.1 Razor表达式使用HTML自动编码。 
{string messagescript alert(hello);/script
}弹出一个警告框。 
2.2 不进行HTML编码 
{string messagestrongThis is a bold/strong
}
spanHtml.Raw(message)/span 
显示结果 
spanstrongThis is bold/strongspan 
js中使用Ajax.JavaScciptStringEncode方法对用户输入进行编码可以有效避免XSS攻击 
script typetexxt/javascript$(function(){var messageHello Ajax.JavaScriptStringEncode(ViewBag.UserName);$(#message).html(message).show(slow);
}); 
理解HTML和JavaScript编码的安全隐患很重要。 
3.Razor语法示例 
3.1 隐式代码表达式 
代码表达式被计算再将值写入响应。隐式代码表达式总是采用HTML编码。 
spanmodel.Message/span 
3.2 显示代码表达式 
span12(12)/sapn 
3.3 无编码代码表达式 
不需要采用HTML编码的值可以使用HTML.Raw方法保证值不被编码。 
sapnHtml.Raw(model.Message)/span) 
3.4 代码块 
{int x124;string yabc;
} 
3.5 文本和标记相结合 
foreach(var item in items)
{spanItem item.Name./span
} 
3.6 混合代码和纯文本 
if(showMessage)
{textThis is plain text/text
} 
text标签只是把标签内容写入到响应标签本身不写入。 
3.7 转移代码分割符 
使用编码 
3.8 服务器端的注释 
* 
XXXXX 
* 
3.9 调用泛型方法 
(Html.SomeMethodAType())