Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#ASP.net,使用字符串变量存储和编写HTML_C#_Html_Asp.net Mvc_String - Fatal编程技术网

C#ASP.net,使用字符串变量存储和编写HTML

C#ASP.net,使用字符串变量存储和编写HTML,c#,html,asp.net-mvc,string,C#,Html,Asp.net Mvc,String,我有一个表单,用户可以在其中输入YouTube视频的url。我的代码解析url并创建存储在数据库中的嵌入字符串。这看起来像: string rawQuery = uri.Query; int index = rawQuery.IndexOf("?"); if (index > 0) rawQuery = rawQuery.Substring(index).Remove(0, 1); id = HttpUtility.ParseQueryString(rawQ

我有一个表单,用户可以在其中输入YouTube视频的url。我的代码解析url并创建存储在数据库中的嵌入字符串。这看起来像:

string rawQuery = uri.Query;
int index = rawQuery.IndexOf("?");
if (index > 0)
                rawQuery = rawQuery.Substring(index).Remove(0, 1);
id = HttpUtility.ParseQueryString(rawQuery).Get("v");

string embedURL = "<iframe width=\"640\" height=\"360\" src=\"http://www.youtube.com/embed/" + id + "\" frameborder=\"0\" allowfullscreen></iframe>";

如何打印此字符串,使其不会转义引号和小于/大于符号?

我认为您应该使用
@Html.Raw(string)


例如,如果使用ViewBag在视图中输出字符串,请使用

@Html.Raw(ViewBag.EmbedURL)

这会告诉框架不要对字符串进行编码

只有当您在页面中写入字符串时,它才会被编码。使用
服务器标记输出字符串而不进行编码:

<%= embedURL %>
然后您可以将其正常输出:

<%: html %>
您还可以使用
Html.Raw
方法将其包装在
HtmlString
对象中:

@Html.Raw(embedURL)
<%: html %>
@html
@Html.Raw(embedURL)