2013-07-26 32 views
-1

如何将下面的内容投射到剃刀阵列中?目前它返回system.string [];如何投射到剃刀阵列?

var Users = @ViewData["arrUsers"] 

香港专业教育学院尝试了一些东西,但所有的回传失误

感谢

回答

1

如果你都可以写var Users这意味着你在代码方面,而不是HTML。所以你不需要@符号来访问ViewData。然后你可以像在序号C#中一样投射。

@{ 
    var Users = (string[])ViewData["arrUsers"]; 
} 

如果这发生在Javascript中,你可以这样做。我不认为其良好的做,但如果你真的需要它...

<script type="text/javascript"> 
    $(document).ready(function() { 
     var users = new Array(); 
     @foreach (var user in (string[])ViewData["arrUsers"]) 
     {@:users.push("@user");} 
    }); 
</script> 
+0

我使用的代码在CSHTML视图,虽然,所以我需要的@ somwhere不要我? – AlexW

+0

在cshtml里面你可以在HTML和C#之间切换。如果您已经在C#上下文中,则不需要@。 我修改了我的代码片段,以便您可以看到放置@的位置。 –

+0

现在的代码是{@我的Java函数无法看到变量,我可以做var Users @ {...? – AlexW