private static IPropertyChooserPolicy GetPropertyChooser(IBuilderContext context, string idToBuild, Type typeToBuild)
        {
            IPropertyChooserPolicy chooser =
                context.Policies.Get <IPropertyChooserPolicy>(typeToBuild, idToBuild);

            if (chooser == null)
            {
                chooser = new DefaultPropertyChooserPolicy();
                context.Policies.Set(chooser, typeToBuild, idToBuild);
            }
            return(chooser);
        }
        private IEnumerable <PropertyInfo> GetInjectionProperties(IBuilderContext context, Type typeToBuild, string idToBuild)
        {
            IPropertyChooserPolicy chooser = GetPropertyChooser(context, idToBuild, typeToBuild);

            return(chooser.GetInjectionProperties(typeToBuild));
        }