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

  • ThePhestor

    ThePhestor

    22 Mart 2011
  • TV nEW

    TV nEW

    25 AĞUSTOS 2012
  • Wild Academy

    Wild Academy

    8 Aralık 2009