Подтвердить что ты не робот

С#, чтобы json не отображал правильно

Привет, я пытаюсь отправить строку в представление, похожее на json.

Im отправляет список мест:

class Place 
        {
            public string title { get; set; }
            public string description { get; set; }
            public double latitude { get; set; }
            public double longitude { get; set; }
        }

List<Place> placeList = new List<Place>(); 
//add places to PlaceList

//Then i do this
System.Web.Script.Serialization.JavaScriptSerializer oSerializer = new System.Web.Script.Serialization.JavaScriptSerializer();
            string sJSON = oSerializer.Serialize(placeList);
            ViewBag.Places = sJSON;

В представлении его вывод вывода выглядит так:

[{&quot;title&quot;:&quot;sdf sdfsd sdf sd f&quot;,&quot;description&quot;:&quot;sdf sdf sd fsd sd sdf sdf dssd sdf sd s&quot;,&quot;latitude&quot;:53.740259851464685,&quot;longitude&quot;:-2.4602634343627927},

Как заставить его отображать как обычный json в представлении? минус &quot; и т.д.?

4b9b3361

Ответ 1

В своем комментарии ниже вы говорите, что ваше представление использует @ViewBag.Places

Используете ли вы Razor? Если это так, синтаксис @ делает то же самое, что и <%: - он кодирует содержимое.

Используйте интерфейс IHtmlString, чтобы избежать его, либо:

ViewBag.Places = new HtmlString(sJSON);

Или

@HtmlString(ViewBag.Places)

Ответ 2

@Html.Raw(ViewBag.Places)

также работает

Ответ 3

Вы пытались?

string sJSON = HttpServerUtility.HmltDecode(oSerializer.Serialize(placeList));