Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Moduler Design Questions
Message
General information
Forum:
ASP.NET
Category:
Class design
Miscellaneous
Thread ID:
01495955
Message ID:
01495963
Views:
53
>I am developing an application that will allow the customer to purchase different snap-in components. These components represent versions of different technologies. As an example, if they own MS Word 2000, they can purchase the plugin MSWD2000.dll. If they own MS Word 2003, they can purchase the plugin MSWD2003.dll, and for MS Word 2007, they can purchase the plugin MSWD2007.dll, and so on.
>
>What I'm considering doing is creating an MSWord_Base class, then a MSWord_2000 class based off of it, then a MSWord_2003 class based off of the MSWord_2000 class, and so on. Each project would be in the same MSWord solution. This design allows me to generate seperate DLL's for each version of Word.
>
>1) Anyone see any issues with this? I welcome better ideas
>2) How would the app know what snap-ins are available?
>3) How do I keep someone from using the DLL in another .Net app? I would want to prevent method calls from working unless the user is registered.
>
>Thanks

You might want to take a look at Managed Extensibility Foundation (MEF). The gist of it is to be able to extend an application without changing the core app. You just snap in new pieces following the protocol and they are instantly recognized.

More info here --

http://mef.codeplex.com/
http://msdn.microsoft.com/en-us/library/dd460648.aspx

There is also an article on MEF in the January 2011 issue of MSDN Magazine. That does not appear to be online yet, at least not on the magazine's site. I just got it in the mail this week.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform