我有这个场景......
1.-我正在为用户提供“动态表”以定义字段。每个动态表将根据需要包含尽可能多的行/记录,但字段定义是集中的。
2.-我的Dynamic Row / Record类继承自.NET DLR DynamicObject类,底层存储是与定义字段相关联的List。一切正常!但是...
3.-因为我需要序列化内容,而DynamicObject不是Serializable,所以当需要动态成员访问时,我被迫生成并携带动态对象。但这是丑陋和多余的。
所以,我需要自己实现IDynamicMetaObjectProvider来实现动态访问和序列化。
谷歌搜索/ binging失败后,我请求你的帮助...... 有人可以举一个很好的例子(或相关链接)吗?
答案 0 :(得分:2)
听起来像你正在重新发明ExpandoObject class。考虑一下这些实现的集合。
答案 1 :(得分:1)
解决方案是实现自定义序列化。 实现ISerializable接口,以及反序列化构造函数。
实现IDynamicMetaObjectProvider需要更少的时间。