Lately I’ve been working with porting my existing application to prism. It has been a painful experience mostly because, as I believe, I don’t understand how to use prism.
My existing application is heavy based on use of generics to avoid repeating code, Unity for dependency injection and other stuff I read about (NHibernate).
Prism would give me a way to modularize my application keeping memory footprint low and apply a better testing strategy. I also hoped to be able to rewrite some parts of the UI to achieve
better isolation between logic and look and feel.
So far this has been a complete failure and I have reached the state where I wonder,,,, why bother. The reason is that my code seems to be more and more cluttered with dependences instead
of modularized, I keep repeating my code, etc ……. sadly to say “ugly”
Could anyone give me a hint how to use prism……… the samples I have seen on the internet seems to be “to simple” and I unable to “interpolate” the examples to something useful for me.
My application then …….
The base is a collection of Persons. I have two views of persons, first PersonCollection and the PersonCRUD. Then I have a two other collection of objects both with two views: ObjecACollection,
ObjectACRUD, ObjectBCollection and ObjectBCrud. Both ObjectA and ObjectB contains references to Person, and ObjecA contains a reference to ObjectB. ObjectA is a quite complex object. (the real application has a lot more views)
Having this specification, how would you guys set up a prism project to for best modularity, avoid to repeat code and have good testability and extensibility???