Нужно ли как-то использовать сериализацию?
Да, рекомендуется использовать сериализацию JSON при передаче сложных типов в javascript.Например, вы можете использовать класс JavaScriptSerializer :
<script type="text/javascript">
var value = <%= new JavaScriptSerializer().Serialize(AnyComplexObjectYouLike) %>;
</script>
Пример с Dictionary<string, string>
:
<script type="text/javascript">
var value = <%= new JavaScriptSerializer().Serialize(new Dictionary<string, string> { { "key1", "value1" }, { "key2", "value2" } }) %>;
alert(value.key1);
</script>
, который будет отображаться как:
<script type="text/javascript">
var value = {"key1":"value1","key2":"value2"};
alert(value.key1);
</script>
в окончательной разметке.