对于WPF的编程案例,主要的经验总结如下:
1.如果在CODE FIRST模式中,将数据库中的 __MigrationHistory表删除,就相当于关闭了数据库的数据迁移功能,此时如果程序中的数据模型与数据库不一致,仍不能正常运行,但只要分别更改数据库库与程序,使之一致即可。
2.使用DEV EXPRESS的报表功能时,一般看到的可编辑的页面与打印时看到的页面是不同的模板,需要分别编辑。即可编辑的页面一般是程序中的窗体控件等,而打印的页面是DEV EXPRESS的打印模板。只是为了内容一致,而预先将两者设计的基本一致而已。
3.TEventType GetEvent<TEventType>() where TEventType : EventBase, new();
在继承关系中,where只用于泛型,new()的意思是,这个T必须有public构造函数,如果new BaseClass<T>()的时候,这个T没有public 构造函数,将编译错误.
4.EventAggregator(事件聚合器),在一些复杂系统中,组件通常需要通过一些松耦合的方法与其它的组件或服务相交互。为了支持这些,Prism提供了EventAggregator组件来实现pub-sub事件机制,以此组件可以在不互相引用的前提下发布事件或者订阅其它组件的事件。EventAgrregator通常在不同组件中被定义以用来实现不同模块间的交流。
5.所谓框架就是应用现有的模块或插件等API函数来简化项目的开发工作等,从而加快项目进度。因此,应用某个框架时,应先熟悉相应的API等相关模块的含义与使用。