ViewBag
ধরণের dynamic
তবে এটি অভ্যন্তরীণভাবে একটিSystem.Dynamic.ExpandoObject()
এটি এভাবে ঘোষণা করা হয়েছে:
dynamic ViewBag = new System.Dynamic.ExpandoObject();
যে কারণে আপনি এটি করতে পারেন:
ViewBag.Foo = "Bar";
একটি নমুনা বিস্তৃত অবজেক্ট কোড:
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;
}
}
}