Эффективный способ регистрации json на стороне клиента со стороны сервера asp.net ?

#c# #asp.net #json

#c# #asp.net #json

Вопрос:

Я написал aspx-страницу. Я хочу зарегистрировать клиентскую переменную из исходного кода (c #) непосредственно в разметке. Это означает, что связь не требуется.

Я преобразовал некоторый пользовательский объект в объект json на стороне сервера, и клиент (jquery) ожидает использовать json obejct var . Поэтому я предпочитаю как можно меньше преобразований (не преобразование в строку, а синтаксический анализ в json на стороне клиента).

Какой наиболее эффективный и элегантный способ сделать это?

Комментарии:

1. Не могли бы вы пояснить это предложение: «У меня уже есть объект json на стороне сервера»? Какой тип объекта вы хотите передать на сторону клиента?

2. Если вы пишете в разметку, то var myJsonObject = {yourserverobjectthere} . Но вы также могли бы управлять всеми JSON из некоторого объекта одного экземпляра с помощью функции MyJSONStorage.addJson(‘objectKey’,{yourserverobjectthere});

3. Методы страницы JSON — ваш лучший выбор.

Ответ №1:

Я не уверен на 100%, что понял ваш вопрос, но, по-видимому, вы хотите написать переменную javascript со стороны сервера; что-то вроде:

 var json = @"var myobj={""Name"":""John Smith"",""Age"",34};";
 Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "myvar", json,true);
 

Это отобразит это на стороне клиента:

 <script type="text/javascript">
//<![CDATA[
var myobj={"Name":"John Smith","Age",34};//]]>
</script>