BlogEngine.Net架构与源代码分析系列part8:扩展
XMLDocumentBehavior主要是为了配置WidgetZone而设计的,它实际上是一个Widget的集合的配置,在页面加载时会读取这些配置来决定怎样显示相应的Widget。 除此之外还需要我们注意的一个地方就是配置对象在XML和数据库的存储表示,实际上它们内部的信息都是一段XML,相应的对于这两种的数据访问的结果处理也是不一致的(我觉得这个地方设计的不是很好,因为这一层似乎对于Provider有些依赖关系代码,参见XMLDocumentBehavior.cs,不过还好毕竟是实现依赖于实现嘛,可能也没想出更好的办法)。 客户端的使用 Extension(App_Code\ExtensionManager\Manager.cs): 1/**//// <summary> StringDictionary(widgets\TextBox\edit.ascx.cs): 1/**//// <summary> XMLDocument(App_Code\Controls\WidgetZone.cs): 1private static XmlDocument RetrieveXml() 对于客户端的使用部分涉及到了Extension,Widget部分等,这些内容会在后续的文章中进行详细说明。 总结 1.桥模式的使用 2.统一的配置模型 3.对于XML存储和数据库存储的处理方式不同 面向对象的设计原则真是太经典了 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |