Handling Lazy + Metadata instances in Managed Extensibility Framework (MEF)

Magnus Mårtensson

Have you ever wanted to dynamically choose from many potential implementations of some code? Would you like to have the power of metadata filtering and lazy instantiation of the selected implementation? Here is how to do just that using Managed Extensibility Framework (MEF) and also a neat trick to handle your implementation/metadata pairs that I [...]

Tags: , ,

Performance nightmare

Björn Carlsson

22 to 0.3 seconds! I found a simple solution to a very common problem. While profiling I found that remove in this little method took a lot of the time. public void MovePropertyFirst(IProperty property) { properties.Remove(property); properties.Insert(0, property); } The reason was, that it’s time consuming to compare the properties by equality, for complex types. [...]

Tags: , , , ,