Ori*_*rin 6 asp.net-mvc html5 razor
我试图使用MVC razor of autoplay ='autoplay'向页面输出一个值,以便自动播放HTML5视频.我的方法GetAutoPlayVideo读取web.config文件以确定该站点是否将自动播放视频.
public static string GetAutoPlayVideo()
{
bool autoPlayVideo = Converter.ToBoolean(System.Web.Configuration.WebConfigurationManager.AppSettings["AutoPlayVideo"]);
if (autoPlayVideo)
return "autoplay='autoplay'";
else
return string.Empty;
}
Run Code Online (Sandbox Code Playgroud)
然后在页面上使用以下标记:
<div id="videoHolder">
<video id="video" width="503" height="284" @Html.Raw(MyUtility.GetAutoPlayVideo()) controls >
@foreach (string s in Model.SelectedShow.VideoFiles)
{
<source src="@(CdnResources.GetImageUrl(s))" type="@(Utility.GetMimeType(s))" />
}
Your browser does not support the video tag.
</video>
</div>
Run Code Online (Sandbox Code Playgroud)
我到目前为止创建的语法是这样的:
@Html.Raw(MyUtility.GetAutoPlayVideo())
Run Code Online (Sandbox Code Playgroud)
有可能缩短这个类似的东西吗?
@MyUtility.GetAutoPlayVideo()
Run Code Online (Sandbox Code Playgroud)
SLa*_*aks 12
是.
Razor逃逸系统不会逃脱任何类型IHtmlString.该Html.Raw()方法只返回HtmlString包含文本的实例.
您可以简单地将方法声明为返回IHtmlString,并调用Html.Raw()(或new HtmlString()内部.