当前位置: 首页 > news >正文

php js做网站秦皇岛网站seo

php js做网站,秦皇岛网站seo,国内做外贸如何访问外国网站,网站建设一般多少钱要如何选择简介 注意: 坑极多。而且截至2023年,这个东西仅仅是半成品 利用SourceGenerator可以在编译结束前生成一些代码参与编译,比如编译时反射之类的,还有模板代码生成都很好用。 演示仓库传送门-Github-yueh0607 使用 1. 创建项目 …

简介

注意: 坑极多。而且截至2023年,这个东西仅仅是半成品

利用SourceGenerator可以在编译结束前生成一些代码参与编译,比如编译时反射之类的,还有模板代码生成都很好用。

演示仓库传送门-Github-yueh0607

使用

1. 创建项目

我们需要两个项目,创建完如下

  1. 类库项目(用作生成器)(注意只能是.NET Standard 2.0 ,别的无效)
  2. 控制台项目(用来测试)(至少是.NET 5.0或者以上,建议是6,7)
    在这里插入图片描述

2.安装CodeAnalysis.Common包

在这里插入图片描述
注意:这个包是依赖Roslyn编译器的,所以请把VisualStudio更新到最新,这一点相当重要,或者你自行保证 编译器版本符合这个Nuget包的要求,如果不符合,在VS的警告里会发出提示。

严重性 说明 行
警告 分析器程序集“X:\Projects\ImportantProjects\SourceGenTest\SourceGen\bin\Debug\netstandard2.0\SourceGen.dll”引用了编译器的版本“4.6.0.0”,该版本高于当前正在运行的版本“4.4.0.0”。 1

3.写生成器

  1. 注意要实现ISourceGenerator接口
  2. 加上特性Generator (可以不写参数,也可以写"C#",或者我这么写也行)
  3. 尽量使用完全限定来防止名称冲突,global能进一步防止撞名字
  4. 使用"""三个引号能写格式化代码,很方便
  5. 记得打上特性标记代码由编译器生成,而非用户生成或者书写的,防止被滥用
using Microsoft.CodeAnalysis;namespace SourceGen
{[Generator(LanguageNames.CSharp)]public sealed class HelloWorldGenerator : ISourceGenerator{void ISourceGenerator.Execute(GeneratorExecutionContext context){const string version = "1.0";context.AddSource("TestFile.cs",$$"""//<auto-generated/>#nullable enablenamespace GenCode{[global::System.CodeDom.Compiler.GeneratedCodeAttribute("{{nameof(HelloWorldGenerator)}}","{{version}}")][global::System.Runtime.CompilerServices.CompilerGeneratedAttribute]public static class GeneraredClass{[global::System.CodeDom.Compiler.GeneratedCodeAttribute("{{nameof(HelloWorldGenerator)}}","{{version}}")][global::System.Runtime.CompilerServices.CompilerGeneratedAttribute]public static void Hello(){global::System.Console.WriteLine("代码生成成功");}}}""");}//初始化,可以写一些筛选条件之类的void ISourceGenerator.Initialize(GeneratorInitializationContext context){}}
}

在这里插入图片描述
写完就出警告了,在生成器项目需要添加Enforce…加上就OK了
在这里插入图片描述

4.引用生成器

在这里插入图片描述
在这里插入图片描述
引用完之后,在ItemGroup里只有Include,手动加上后两项。注意不要写错字母

注意本文内使用的C#版本较高,可能需要手动打开preview模式
在这里插入图片描述
在这里插入图片描述

生成器每次改动都需要重新生成这个项目!!!,建议第一次也重新生成

5.玄学施法时刻

重启VS
在这里插入图片描述
在这里插入图片描述
这样测试项目里就生成完毕了

http://www.hkea.cn/news/303742/

相关文章:

  • ssm网站开发源码百度推广多少钱一个月
  • 手游门户网站建设appstore关键词优化
  • 齐河网站开发seo服务内容
  • 北京微信网站建设费用想卖产品怎么推广宣传
  • 网站上线的步骤厦门网站推广公司哪家好
  • 网站做app的软件有哪些百度一下你就知道下载
  • 界面设计的重要性百度seo关键词排名推荐
  • 股票做T网站直播营销
  • 北京手机网站建设公司排名技术优化seo
  • wordpress可爱的主题seo优化教程
  • 自己可以申请网站做外卖吗网站描述和关键词怎么写
  • 公司网站网页设计seo站长工具推广平台
  • 重庆南岸营销型网站建设公司哪家专业真实的网站制作
  • 郑州企业网站建设兼职推广渠道
  • 网站哪些数据优化大师的作用
  • 政府网站集约化建设总结营销软文推广平台
  • 学网站开发跟那个专业最相近百度站长平台注册
  • 网站开发python电脑培训班有哪些科目
  • 惠州响应式网站哪家好云盘搜索
  • spring做网站合肥seo排名收费
  • 做58网站怎么赚钱二十个优化
  • 做企业手机网站北京seo网站开发
  • 关于网站建设中原创文章的一些想法体育热点新闻
  • 天河做网站开发免费留电话号码的广告
  • 成都市金堂县网站建设免费seo在线工具
  • 计算机培训中心网站高端网站建设的公司
  • 成都建设路小学网站大作设计网站
  • 桂林创新大厦网站今日十大热点新闻事件
  • 做网站空间哪家好windows7系统优化工具
  • 网站建设首选公司seo推广一个月见效