如何将数组作为字符串返回?

时间:2013-10-22 20:51:07

标签: asp.net-mvc-4

我想在MVC控制器中创建一个数组并将其嵌入到页面中,以便jQuery可以使用它。

如果我去:

var arr = new[]{"abc", "bca", "xyz"};
ViewBag.MyArray= arr.ToString();

我在网页中获得了System.String []。

如果我去

this.ViewBag.StartupScript = Json(new { flag = "en_GB", flag = "ro_RO" }).Data;

它不会编译,复制名为flag的匿名类型属性。

2 个答案:

答案 0 :(得分:1)

如果您的目标是从数组中创建一个字符串,则需要:string.Join('delimiter', arr)

至于你的第二个例子,你显然不能在同一个对象上将两个属性命名为相同的东西。

当然,你的问题有些不对,可以通过另一个答案更好地回答,其中你的意思被推断出来了。

答案 1 :(得分:0)

首先,您需要将其传递给View:

ViewBag.MyArray = arr;

然后在视图中:

<script type="text/javascript">
var arr = @Html.Raw(Json.Encode(ViewBag.MyArray));
</script>