实现类似MVC ViewBag类型的对象
2024-10-18 22:31:46
public class ViewBag : DynamicObject {
private readonly Dictionary<string,dynamic> dic=new Dictionary<string,dynamic>(); public ViewBag() { }
private Dictionary<string,dynamic> ViewData {
get {
return dic;
}
}
public override IEnumerable<string> GetDynamicMemberNames() {
return ViewData.Keys;
} public override bool TryGetMember(GetMemberBinder binder, out object result) {
result = ViewData[binder.Name];
return true;
} public override bool TrySetMember(SetMemberBinder binder, object value) {
ViewData[binder.Name] = value;
return true;
}
}
调用:
dynamic viewBag = new ViewBag();
viewBag.Title="xxx";
Console.WriteLine(viewBag.Title);
最新文章
- SQL知识整理二:锁、游标、索引
- Archlinux 上 Nginx + PHP + Mariadb + DiscuzX2.5 安装小记
- RHEL7学习之NTP配置
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
- Retro 2013
- Android Studio升级后,开启时遇到tools.jar seems to be not in Android Studio错误?
- 【hibernate】 hibernate的主键策略
- 利用C语言结构体模拟一个简单的JavaBean
- 因为中国队赢了,再撸一下DJANGO的官方文档吧
- cocos2d-x 3.0 利用python脚本在文件夹Classes内创建class
- 【Chrome】如何在C++中增加给JavaScript调用的API
- WEB前端开发中的图片压缩
- ML笔记:Classification: Logistic Regression
- STL的容器算法迭代器的设计理念
- mysql8.0 Server 在Windows平台中的安装、初始化和远程访问设置
- Mysql:is not allowed to connect to this MySQL server
- git 的相关知识
- 简单FTP服务器搭建
- [转]How to Clean the Global Assembly Cache
- Android 新浪博客分享问题总结
热门文章
- ubuntu 16.04 的64位 安装arm-none-linux-gnueabi-gcc的步骤和问题解决
- php类与构造函数解析
- Google Guice学习
- c#配置文件的简单操作
- BZOJ1115:[POI2009]石子游戏Kam(博弈论)
- 初探ASP.NET Web API
- 安装 MySQL 后,需要调整的 10 个性能配置项
- Linux使用小笔记<;进程操作篇>;
- 9 个用于移动APP开发的顶级 JavaScript 框架
- SpringMVC:学习笔记(8)——文件上传