>>John,
>>About your second approach...
>>
>>So what you're saying is that I build my core components (NewsReader, Blog, ProductList, etc...) and have them each in a DLL. I would use reflection to load the DLL's. If a client wants to use NewsReaderOnSteroids instead of NewsReader, I would just develop the new component and deploy it in place of the existing DLL? I suppose I could use my config file to specify while DLL should get loaded for the component.
>>
>>I would think that this approach would lean heavily on implementing effective interfaces?
>
>
>That's true. If you want, I can send you some code snippets that we used. We allowed our clients to add custom code processing to an import process so that we didn't have to rewrite the entire load. The dll's were loaded on the fly using reflection and executed the customers code in the custom dll.
John,
Some code snippets would be very helpful.
I am having issues with the LoadData line saying "Object reference not set to an instance of an object" and I just can't figure out the syntax to create a new instance of my class.
Type myType = Assembly.LoadFile(@"C:\Newsletter.dll").GetType("NewsLetter");
INewsletter myNewsLetter = myType;
myNewsLetter.LoadData();