public IEnumerable<PropertyInfo> Reflect(IExtension extension) { Ensure.ArgumentNotNull(extension, "extension"); return extension.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public).Where(x => x.CanWrite); } }