Ich habe diesen Index Aktion:JavaScript Variable mit JSON von ViewBag füllen?
public ActionResult Index()
{
var repo = (YammerClient) TempData["Repo"];
var msgCol = repo.GetMessages();
ViewBag.User = repo.GetUserInfo();
return View(msgCol.messages);
}
GetMessages gibt eine Liste von POCO-Nachrichten und GetUserInfo gibt eine POCO mit den Informationen des Benutzers (ID, Name, etc).
Ich mag einen JavaScript-Variable mit der JSON Darstellung der Benutzerinformationen füllen.
Deshalb möchte ich würde so etwas wie dies in der Ansicht tun:
...
<script>
var userInfo = "@ViewBag.User.ToJson()"
</script>
...
Ich weiß, dass nicht funktioniert, aber ist es eine Möglichkeit, das zu tun? Ich möchte vermeiden, eine Ajax-Anfrage zu machen, sobald die Seite geladen ist, nur um die Benutzerinformationen zu erhalten.
möglich Duplikat [ASP.NET MVC: Wie Ansicht Modell in Json Objekt konvertieren] (http://stackoverflow.com/questions/3365551/asp-net-mvc-how-to-convert-view-model- in-json-Objekt) – alexmac