任何人都可以告诉我为什么这段代码在Firefox中没有问题,但在Chrome中我得到了
System.Web.dll中发生System.StackOverflowException。
<div id="tabs-1">
@if (ViewBag.Raw != null)
{
@Html.Raw(ViewBag.Raw)
}
</div>
我从数据库中获取数据
var querys = item.Database.SqlQuery<stuffID>("select Text from stuffFiles where _id=@stuffID", new SqlParameter("@stuffID", id));
我正在接受我需要的文字
foreach (var items in querys)
{
paths = items.Text;
}
ViewBag.Raw = paths;
我不明白为什么它在Chrome中不起作用。
答案 0 :(得分:0)
也许你的代码正在做它本不该做的事情。
您的意思是从text
items
中结束querys
吗?
下面的代码只会考虑最后的item
文字,之前的所有内容都会被覆盖
foreach (var items in querys)
{
paths = items.Text; //try to replace this with the line below
//paths = paths + items.Text + "," ;
}
ViewBag.Raw = paths;
我建议不要使用Html.Raw
,除非你知道自己在做什么。应该使用HttpServerUtility.HtmlEncode
代替
答案 1 :(得分:0)
我想让它使用这段代码
<input type="text" ng-model="otherLang" ng-change="peopleData.language=otherLang">
据我所知,@ Html.Raw呈现未编码的HTML,因此需要先解码。