Reflection Emit Dynamic Assembly Scenarios
In Silverlight-based applications, a dynamic assembly can have only one dynamic module, and that dynamic module is always transient. That is, it must be created with the AssemblyBuilderAccess.Run access mode.
Dynamic assemblies are useful when you have complex functionality that would be difficult to implement as methods. For example, you might have a set of related data items and a set of operations that could be performed on the data. In that case, implementing the code as a type in an assembly might have advantages over using dynamic methods. However, dynamic assemblies cannot be unloaded during the life of your Silverlight-based application.