ile, ViewBag (ve ViewData) arkasındaki fikir şeyler anahtar-değer çiftlerini kapalı saklamak ve uygun görünümünde onları erişebilmenizdir.
ViewData ile, şöyle bunları başvuru:
ViewData["SomeKey"] = someObject;
kullandığınız aynı şeyi istiyorsanız ViewData sözlüğü yapı bir sarma etrafında sağlar ve biraz daha az ayrıntılı ve yapar ViewBag yerine (
ViewBag.isAdmin = true;
ve tyrongower yukarıda belirtildiği gibi, onları kontrol şöyle edebilirsiniz: biraz daha okunabilir) bunu gibi şeyler başvuru
if (ViewBag.isAdmin)
{
// do stuff
}
Genellikle bu yapıyı kullandığımda ViewBag sözdizimini kullanıyorum, ancak gerçekten aynı şeyleri kullanıyorlar. Bunu Görünüm dışında böyle birşey yaptığını Yani eğer:
ViewBag.isAdmin
veya tersi:
yani eğik olsaydı
ViewData["isAdmin"] = true;
Eğer böyle ona başvuru olabilir.
Konsept üzerinde biraz daha ayrıntı var.
'ViewBag',' Dynamic' türündendir, böylece nokta gösterimini kullanabilirsiniz. Ancak 'ViewData'' 'Dictionary' türündedir (iyi ViewDataDictionary), bu yüzden anahtarı belirtmek için indekslemeyi kullanmanız gerekir. –