hi,
I'm developing an EMR Application as my project. there Im using WCF to transfer all the data from the centralized server , WPF for the UI and PRISM to build modules.
I have 3 projects in my solution for WPF/PRISM application
- The Main project(mainApplication) where the shell and bootsrapper are.
- Class library(modulesLib) to hold all the modules
- Class library(infrastructure) to communicate with wcf service ( service reference added with scvutil.exe in visual studio 2008)
project references are added as below
- mainApplication have references of 'modulesLib' and 'infrastructure'
- modulesLib have refence to 'infrastructure'
my current procedure is below
- There are 6 wcf services (6 hosts) exposed using a windows service
- hard coded database details inside wcf service implementations (queries, fields, tables)
- calling the WCF services directly withing viewmodels/ presenters for modules (through infrastructure library).
- Created classes called abstract ViewModelBase (which implements INotifyPropertyChanged , also having IUnityContainer,IRegionManager,IEventAggregator references) , abstract ModuleBase (which implements IModule) and I use these 2 classes to inherit from whenever I add a viewmodel or a module
- I put all the databinding properties in to viewmodel and use the viewmodel's constructor to instantiate a given view, set its data context and add it to a region in the shell
- List item
whenever I want to communicate between modules, I use CompositePresentationEvents
what I would like to know
- whether the way i have done things, is it seems OK for you guys .
- Still there are loads of errors, crashing bugs etc.. can I have a single place to handle these exceptions so the application wont break (logging or something like that)
- what would be your way to working on a project using WPF,WCF,MSSQL and PRISM
thank you, Nadun