DCSIMG
Extensibility - Bnaya Eshet

Bnaya Eshet

Disclaimer

Browse by Tags

All Tags » Extensibility (RSS)
Immutable Collections
Immutable Collections Immutability is a pattern which is suit well parallel programming , but you have to be aware of a potential memory pressure risk when it's not implemented right or used wisely. this post will cover a new BCL library (still in its preview stage) which is targeting immutable collections . .NET is already having Concurrent implementation for Queue, Stack, Bug and Dictionary, which is thread-safe , but other type of collection like List is missing. another type of collection...
MEF 2.0 TOC
MEF 2.0 TOC MEF 2.0 is a reflection of a community requests. features like Open Generics , fluent and conventional discovery , lifetime handling of the part , better exception handling and more, was all requested by the community. part 1: Open Generics Part 2: Fluent and Conventional Export Part 3: Fluent import constructor Part 4: Fluent import Part 5: Fluent export properties. Part 6: Composition scoping and lifetime management Part 7: Catalog filter and Deep hierarchic scoping. Part 8: Composition...
Visual Rx - Part 6
Visual Rx - Part 6 this post is part of the Visual Rx series and it will focus on Visual Rx Viewer Side Extensibility . this post is dealing with advance topic, you may want to read other post on this series before reading this one. this post refer to version 2.0.20.622.60 or higher (the extensibility model was simplify at this version). Visual Rx support extension via plug-ins bundle contract. a plug-ins bundle contains: General information about the package (like title and description), Publisher...
MEF - Best Practice
MEF - Best Practice In this post I will offer MEF   practice that may ease your MEF life . one of the MEF headache is to understand what's goes wrong, when MEF reject the composition , you can read more about MEF diagnostic in this post.  Most of the obscure loading failure happens when your Export dependencies doesn't satisfied . in those case you solely relay on the MEF error message which is not enough in cases of deep dependencies graph. It will normally occurs when you are...
SDP - MEF (Real-Life patterns)
SDP - MEF (Real-Life patterns) On the last day of the SDP at Crown Plaza Hotel, Tel Aviv. I was lecturing about Real-Life scenario of MEF failures . the lecture was focusing on diagnostic , solutions and testing . I want to thanks all attendant's, It was the after lunch session and you were bravely kept your eyes open.   the presentation pdf can be found here .   you can use the following check-list as recommended diagnostic process .   Diagnostic Check-List Is the instance included...
Dynamic MEF isn't thread safe by nature
Dynamic MEF isn't thread safe by nature this post focus a pitfall which you should be aware in order to avoid sporadic crashes. In general most of MEF operation are operate once at the application initialization stage, and it normally happens on a single thread.   this may not be true when you need to dynamically load MEF parts (using GetExportedValue or SatisfyImportsOnce ).   unfortunately MEF underline is using non concurrent dictionary which is not thread safe for the above operation...
Exporting non Exportable types
Exporting non Exportable types this post extend Glenn Block 's post about " Poco, Mef, and custom type systems. Are you ready to take the red pill?"   the post is adding a compile time attribute export model , Directory catalog and migrate Glenn code to VS 2010 . It is very recommended to read Glenn Block 's post before reading this one.   the code sample for this post can be download from here .   Summarizing Glenn's post in general Glenn show how to add attributes...
Testing and Debugging MEF, avoiding misconceptions - Part 3
Testing and Debugging MEF , avoiding misconceptions - Part 3 this is the 3rd post of this series and it will discuss common misconceptions which may lead unexpected behavior and long debugging nights.   Initialization issues the first misconception occurs when developer are trying to access imported property at construction time. NullReferenceException [ Export ] public class MyPlugin { public MyPlugin() { // the logger import doesn't satisfied yet // the next line will result with NullReferenceException...
Testing and Debugging MEF, Tips - Part 2
Testing and Debugging MEF, Tips - Part 2 this is the second post of a series that will offer some tips about testing and debugging your MEF -able component and application.   in this post we will focus about debugging the most common, and most confusing, MEF failure .   Assembly Loading Failure the most common MEF runtime failure occurs because of missing assembly which contain the MEF parts (Import, Export) or the parts dependencies (like 3rd party components).   under the hood MEF...
Testing and Debugging MEF, Tips - Part 1
Testing and Debugging MEF, Tips - Part 1 this is the first post of a series that will offer some tips about testing and debugging your MEF -able component and application.   in this post we will focus about exporting Mock objects.   the code sample for this post can be download from here .   Prerequisite if you are not familiar with Mocks you better read more about this subject before proceeding with this post (in short Mocks are fake object which is use for separate dependencies during...
Post recommendation
if you want to learn more about MEF backstage you can find more information under the following post: MEF: What and why http://blogs.msdn.com/b/hammett/archive/2010/05/29/mef-what-and-why.aspx
C# IntelliSense extension for VS 2010 V1.9
C# IntelliSense extension for VS 2010 V1.9 new release to my C# IntelliSense extension . this is a major release that focus on bug fix, tooltip support and styling.   you can download the extension from Visual Studio Gallery here . the extension code is available here .    
MEF for Beginner (Deployment Catalog) - part 12
MEF for Beginner (Deployment Catalog) - part 12   this is the 12th post of the MEF for Beginner series, the series TOC is available here . this post will focus on Deployment Catalog .   the code sample for this post can be found here .     What is MEF Deployment Catalogs? the deployment catalog is actually a redesign of the older package catalog . it enable to load parts from xap packages a-synchronically.   Code sample the following code sample depend on 2 assembly that...
MEF for Beginner (Import from Xaml) - part 11
MEF for Beginner (Import from Xaml) - part 11 this is the 11th post of the MEF for Beginner series, the series TOC is available here . this post will focus on Importing mef parts directly from the Xaml . the code sample for this post is available here .   assuming that we have the following exports : Code Snippet class DemoStrings {     [ Export ( "MyTag" )]      public string Text1 { get { return "Hello world" ; } }     ...
MEF Preview 9 released
MEF Preview 9 was released   MEF   preview 9 changes will be reflected the in the release of .NET 4.0 and Silverlight 4.0 .   except from bug fixing, there was some changes to the API , most of the changes is related to  System.ComponentModel.Composition.Initilization.dll , which is not yet available only for none Silverlight application :-(   here is a short list of API changes: PackageCatalog were brought back, and changed it name to DeploymentCatalog . PartCreator was...
More Posts Next page »