# Kugar.UI.Web.AdminLTE **Repository Path**: kugar/Kugar.UI.Web.AdminLTE ## Basic Information - **Project Name**: Kugar.UI.Web.AdminLTE - **Description**: AdminLTE 后台管理模板 - **Primary Language**: C# - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 9 - **Forks**: 5 - **Created**: 2018-06-15 - **Last Updated**: 2024-11-04 ## Categories & Tags **Categories**: backend **Tags**: None ## README 启用AdminLte样式的时候,需要使用一下配置 nuget 中,请搜索 Kugar.UI.Web.AdminLTE.NetCore 包 ```C# public void ConfigureServices(IServiceCollection services) { services.Configure(options => { options.CheckConsentNeeded = context => false; //如果需要使用自带的登录功能,记得将这里改为false,不能为true,否则无法写入session options.MinimumSameSitePolicy = SameSiteMode.None; }); services.AddHttpContextAccessor(); services.UseAdminLTE(false); //false 为停用之前的授权方式 //新的授权方式 services.AddAuthentication() .AddAdminLTECookie("admin", option => //admin为不同的scheme名称,使用该名称,可以区分不同的后台,如平台后台和客户后台,无需重新做登录 { option.LoginManager = new AdminManager(); //此处设置登录验证相关的接口实现 option.MainTitle = "测试管理后台"; //登录窗口的标题 option.LogoUrl=""; //登录窗口的logo的Url }); /* 使用上面新的授权方式之后,在Controller或者Action上使用 [AdminAuthorizeScheme("admin")] //该名称必须与注册授权方式时,注册的名称相同即可 */ //如果需要使用自带的管理员列表和管理员详情的,需要注入 services.AddSingleton(new AdminManager()); //自己新建一个类继承IAdminManager接口 } public void Configure(IApplicationBuilder app, IHostingEnvironment env) { app.UseAdminLTEStaticFile(); app.UseStaticHttpContext(); //新增该处调用 app.UseAuthentication(); //新增该处调用 } ``` 使用的时候,在_ViewImports.cshtml 文件里或者在 自定义的View中,使用 @using Kugar.UI.Web.AdminLTE @inject AdminLTEUI WebUI 使用该语句,可将AdminLTEUI类注入到每个页面中 @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers //这句是系统默认自带的,如果没有,手动加上 在_ViewStart中,可设置默认的Layout 该套样式包含了3个Layout AdminLTEUI.LayoutPath.DefaultLayoutPath 该模板未非IFrame模式,,每个页面都是独立的页面 如果需要使用iframe+tab的模式,则在外层中使用 AdminLTEUI.LayoutPath.LayoutWithIFramePath 模板 在内层内容页上,使用 AdminLTEUI.LayoutPath.LayoutWithIFramePath_Content 模板 每个Layout有以下几个section:从上到下为section:styles,logo,footer,scripts,,如需增加自己的Layout,可输出这几个section 如果只使用登录页面的View,可使用 AdminLTEUI.LayoutPath.LoginViewPath,并自己传入Model_Login为model 设置菜单使用,可以在Layout中,或者在_ViewStart中配置通用的后台配置,如: ```C# WebUI.Menus=new PageMenu[] { new PageMenu() { Title = "用户信息", //菜单标题 GotoUrl = "", //跳转链接 Key="UserList", //使用该属性,并且在对应的View中,使用WebUI.CurrentMenuKey="",在访问页面的时候,相同key的左侧菜单项会自动高亮 ChildMenus=new PageMenu[] { } }, new PageMenu() { Title = "管理员列表",GotoUrl = AdminLTEUI.DefaultAdminUrls.AdminListUrl, }, new PageMenu() { Title = "修改密码",GotoUrl = AdminLTEUI.DefaultAdminUrls.ChangePassword, }, }; ``` 管理员列表功能,可以根据需要配置菜单: AdminLTEUI.DefaultAdminUrls.AdminListUrl //管理员列表 AdminLTEUI.DefaultAdminUrls.AdminListUrl_Iframe //管理员列表(iframe版本) AdminLTEUI.DefaultAdminUrls.ChangePassword //修改密码 AdminLTEUI.DefaultAdminUrls.LogoutUrl //退出登录链接 AdminLTEUI.DefaultAdminUrls.LoginUrl //登录链接 application.json 配置项: ``` "AdminLTE":{ "AdminManagerLayout":"", //管理员列表Layout "LogoUrl":"", //登录页LogoUrl, "LoginTitle":"", //登录页主标题 "LoginSubTitle":"" //登录页副标题 } ```