SORU
15 ŞUBAT 2013, Cuma


Nasıl ASP.NET MVC işlerinde ViewBag

Nasıl ASP.NET bu MVC ViewBag iş? Sadece Object, bir ilgimi çekti diyor MSDN, nasıl "Sihirli" özellikleri ViewBag.Foo ve büyü gibi ViewBag["Hello"] gerçekten işe dizeleri?

Ayrıca, nasıl bir yapın ve kullanın ASP.NET WebForms uygulamam miyim?

Örnekler gerçekten mutluluk duyacağız!

CEVAP
20 ŞUBAT 2013, ÇARŞAMBA


ViewBag tip dynamic ama içten System.Dynamic.ExpandoObject()

Bu şekilde beyan edilir:

dynamic ViewBag = new System.Dynamic.ExpandoObject();

yapabileceğiniz ediliyor :

ViewBag.Foo = "Bar";

Örnek Bir Genişletici Kod Nesne:

public class ExpanderObject : DynamicObject, IDynamicMetaObjectProvider
{
    public Dictionary<string, object> objectDictionary;

    public ExpanderObject()
    {
        objectDictionary = new Dictionary<string, object>();
    }
    public override bool TryGetMember(GetMemberBinder binder, out object result)
    {
        object val;
        if (objectDictionary.TryGetValue(binder.Name, out val))
        {
            result = val;
            return true;
        }
        result = null;
        return false;
    }

    public override bool TrySetMember(SetMemberBinder binder, object value)
    {
        try
        {
            objectDictionary[binder.Name] = value;
            return true;
        }
        catch (Exception ex)
        {
            return false;
        }
    }
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • eisleyhead

    eisleyhead

    11 Ocak 2006
  • khloe brooks

    khloe brooks

    25 Temmuz 2011
  • THE RED DRAGON

    THE RED DRAG

    6 ŞUBAT 2009