> Enumerations are emitted as literals in the metadata.  This 
> is great for performance but has versioning problems.  In 
> this particular case, you've placed the enumerations in a 
> separate assembly that both client and server code reference. 
> Once the client and server assemblies are compiled, YOU CAN 
> DELETE THE DLL WITH THE ENUMERATION DEFINITION FROM THE DISK! 
> as the client and server assemblies now have the enumerations 
> in there respective manifests AS LITERALS.  They don't 
> reference the satellite assembly at runtime. If you need to 
> change the enumeration definition, you'll have to recompile 
> both the client and server.
> Note: This holds true for constants also.

        So best would be to create an abstract class with the
enumerations, and let the server and client create an inherited class
from that abstract class to reach for the constants/enums, so you can
change then later? 

        FB

-- 
=======  You can't sell what's free
====================================
Senior Software Engineer @ Solutions Design :  http://www.sd.nl
Get my free, open source .NET software at   :  http://www.sd.nl/software
========================================================================
=

Reply via email to