我们正在开发一款新的手持软件。我不能讨论应用程序的性质,所以我会用一个例子来代替。模块化C#Compact Framework 2.0应用程序
我们正在设计管理学校的手持软件。我们希望模块化系统的各个方面,以便不同的学校可以使用不同的功能。
我们的系统将从主菜单和登录屏幕开始。我希望这是系统的基础,并且将模块添加到哪里。即我会有一个名为SchoolPda的项目。
然后我想拥有不同的模块。即,我想要一个注册模块来处理学生注册。我想要一个教室模块来管理教室的清洁等。
我可能会看到这个工作的方式是包括/不包括不同的dll和基本系统的主菜单暴露按钮来访问这些模块,如果dll存在。这就是我们之后的事情。
有没有人有这样的经验吗?最好的做法是什么?我们不需要担心数据库,因为数据库将始终是完整的数据库,但如果关联的模块不存在,方面将不会被填充。
我们做了类似的事情,但Assembly.LoadFrom是一个昂贵的调用。所以我们切换到了一个xml描述符,在这里我们有所有使用AssemblyName和ClassName定义的插件,这样您就可以直接调用Activator.CreateInstance。 – 2009-01-06 10:46:20