Example #1
0
 internal ParameterMatchingEventArgs(ParameterInfo parameterInfo, IServiceProvider services, IReadOnlyDictionary <string, object> options, ArgumentTraverseContext arguments)
 {
     ParameterInfo = parameterInfo;
     ParameterName = parameterInfo.Name;
     ParameterType = parameterInfo.ParameterType;
     Services      = services;
     Arguments     = arguments;
     Options       = options;
 }
        internal static ParameterMatchingEventArgs RaiseParameterMatchingEvent(ParameterInfo parameter, IServiceProvider services, IReadOnlyDictionary <string, object> options, ArgumentTraverseContext arguments)
        {
            if (ParameterMatching == null)
            {
                return(null);
            }

            ParameterMatchingEventArgs args = new ParameterMatchingEventArgs(parameter, services, options, arguments);

            ParameterMatching.Invoke(null, args);
            return(args);
        }