posts - 609,  comments - 13,  views - 64万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

代码:

复制代码
using Microsoft.AspNetCore.Razor.TagHelpers;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace NetCoreTestMVC2.Commons
{
    //public class EmailTagHelper : TagHelper
    //{
    //  示例1:<email mail-to="xxx@qq.com"></email>
    //  public string MailTo { get; set; }
    //  public override void Process(TagHelperContext context, TagHelperOutput output)
    //  {
    //      output.TagName = "a";
    //      output.Attributes.SetAttribute("href",$"mailto:{MailTo}");
    //      output.Content.SetContent(MailTo);
    //  }

    //  示例2:<email>xxx@qq.com</email>
    //  public async override Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
    //  {
    //      output.TagName = "a";
    //      var content = await output.GetChildContentAsync();
    //      var target = content.GetContent();
    //      output.Attributes.SetAttribute("href", $"mailto:{target}");
    //      output.Content.SetContent(target);
    //  }
    //}

    //[HtmlTargetElement(Attributes = "bold")]
    //[HtmlTargetElement("bold")]
    //public class BoldTagHelper : TagHelper
    //{
    //    //示例:<p bold>xxx</p> 或者 <bold>xxx</bold> 
    //    public override void Process(TagHelperContext context, TagHelperOutput output)
    //    {
    //        output.Attributes.RemoveAll("bold");
    //        output.PreContent.SetHtmlContent("<strong>");
    //        output.PostContent.SetHtmlContent("</strong>");
    //    }
    //}

    /// <summary>
    /// 条件 TagHelper
    /// <div condition="_SignInManager.IsSignIn(User)">xxx</div>
    /// 如果 condition 中返回的值是 false 则不会显示 div
    /// </summary>
    //public class ConditionTagHelper : TagHelper
    //{
    //    public bool Condition { get; set; }
    //    public override void Process(TagHelperContext context, TagHelperOutput output)
    //    {
    //        if (!Condition)
    //        {
    //            output.SuppressOutput();
    //        }
    //    }
    //}

    //前端使用TagHelper前缀,@tagHelperPrefix "tagpre:"
    //TagHelper 前缀,使用在标签前加上<tagpre:a>xxx</tagpre:a>
}
复制代码

 nuget使用日志Nuget安装:Serilog/Serilog.AspNetCore/Serilog.Sinks.File/Serilog.Sinks.Console
配置:

复制代码
public class Program
    {
        public static void Main(string[] args)
        {
            Log.Logger = new LoggerConfiguration()
                .MinimumLevel.Debug()
                .MinimumLevel.Override("Microsoft", LogEventLevel.Information)
                .Enrich.FromLogContext()
                .WriteTo.Console()
                .WriteTo.File(Path.Combine("logs", "log.txt"), rollingInterval: RollingInterval.Day)
                .CreateLogger()
                ;
            CreateWebHostBuilder(args).Build().Run();
        }

        public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
            WebHost.CreateDefaultBuilder(args)
            .UseSerilog()
            .UseStartup<Startup>();
    }
复制代码

 

posted on   邢帅杰  阅读(323)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示