src/ZKEACMS/PluginBase.cs
(开头部分) 10KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/* http://www.zkea.net/
* Copyright (c) ZKEASOFT. All rights reserved.
* http://www.zkea.net/licenses */
using Easy.Mvc.Plugin;
using Easy.Mvc.Resource;
using Easy.Mvc.Route;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.Collections.Generic;
using System.Reflection;
using ZKEACMS.Widget;
using Easy.Extend;
using System.IO;
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection.Extensions;
using ZKEACMS.WidgetTemplate;
using ZKEACMS.Route;
using System.Linq;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.DependencyModel;
using Microsoft.AspNetCore.Mvc.ApplicationParts;
using Microsoft.AspNetCore.Mvc.Razor.Compilation;
using Microsoft.AspNetCore.Razor.Hosting;
using Microsoft.Extensions.Primitives;
namespace ZKEACMS
{
public abstract class PluginBase : ResourceManager,
IRouteRegister,
IPluginStartup,
IApplicationPartTypeProvider,
ICompilationReferencesProvider,
IApplicationFeatureProvider<ViewsFeature>
{
private const string ControllerTypeNameSuffix = "Controller";
public Assembly Assembly { get; set; }
public IWebHostEnvironment WebHostEnvironment { get; private set; }
public abstract IEnumerable<RouteDescriptor> RegistRoute();
public abstract IEnumerable<AdminMenu> AdminMenu();
public abstract IEnumerable<PermissionDescriptor> RegistPermission();
public abstract IEnumerable<WidgetTemplateEntity> WidgetServiceTypes();
public abstract void ConfigureServices(IServiceCollection serviceCollection);
public virtual void ConfigureApplication(IApplicationBuilder app, IWebHostEnvironment env)
{
}
public virtual void ConfigureMVC(IMvcBuilder mvcBuilder)
{
mvcBuilder.ConfigureApplicationPartManager(manguage =>
{
manguage.FeatureProviders.Add(this);
manguage.ApplicationParts.Add(this);
});
}
static Dictionary<Type, string> pluginPathCache = new Dictionary<Type, string>();
static Dictionary<Type, string> pluginNameCache = new Dictionary<Type, string>();
public static HashSet<string> ActiveWidgetTemplates
后面还有 228 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。