internal static void Prepare(IHostingEnvironment env) { var tenum = DefaultAssemblyPartDiscoveryProvider.DiscoverAssemblyParts(env.ApplicationName). Where(m => !m.Name.StartsWith("MvcControlsToolkit")) .SelectMany(m => (m as AssemblyPart).Types).Where(m => m.IsPublic && m.GetInterfaces().Contains(typeof(ITagHelpersProviderExtension))) .Select(m => m.AsType()); foreach (var x in tenum) { ITagHelpersProviderExtension curr = Activator.CreateInstance(x) as ITagHelpersProviderExtension; var res = GetProcessors(curr.For); if (res.Count == 0) { allExtensions[curr.For] = res; } res.AddRange(curr.TagProcessors); var res1 = GetTemplates(curr.For); if (res1.Count == 0) { allTemplates[curr.For] = res1; } res.AddRange(curr.TagProcessors); } }
internal static void Prepare(IHostingEnvironment env) { var tenum = Assembly .GetEntryAssembly() .GetReferencedAssemblies() .Where(m => !m.Name.StartsWith("Microsoft") && !m.Name.StartsWith("System")) .Select(Assembly.Load) .SelectMany(m => m.DefinedTypes) .Where(m => m.IsPublic && m.GetInterfaces().Contains(typeof(ITagHelpersProviderExtension))) .Select(m => m.AsType()); foreach (var x in tenum) { ITagHelpersProviderExtension curr = Activator.CreateInstance(x) as ITagHelpersProviderExtension; var res = GetProcessors(curr.For); if (res.Count == 0) { allExtensions[curr.For] = res; } res.AddRange(curr.TagProcessors); var res1 = GetTemplates(curr.For); if (res1.Count == 0) { allTemplates[curr.For] = res1; } res.AddRange(curr.TagProcessors); } }
internal static void Register(ITagHelpersProviderExtension x) { ITagHelpersProviderExtension curr = x; var res = GetProcessors(curr.For); if (res.Count == 0) { allExtensions[curr.For] = res; } res.AddRange(curr.TagProcessors); var res1 = GetTemplates(curr.For); if (res1.Count == 0) { allTemplates[curr.For] = res1; } res.AddRange(curr.TagProcessors); }