Skip to content

Commit ab40bf8

Browse files
committed
update bin
1 parent 07424df commit ab40bf8

File tree

3 files changed

+32
-3
lines changed

3 files changed

+32
-3
lines changed

README.md

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,48 @@
11
# Roslyn Syntax Tool
22

3-
Roslyn 是以 API 为驱动的下一代编译器。RoslynSyntaxTool是利用编译器的API,来创建描述该C#程序的语法树。与在运行时创建语法树对象SyntaxTree.ParseText()相反,此工具返回在编译和执行时构造这种语法树对象的C#源代码, 在动态生成代理类的时候能派上用场
3+
## 基础概念
4+
Syntax Api:
45

5-
生成器代码来自开源RoslynOuter项目,链接: https://github.com/KirillOsenkov/RoslynQuoter
6+
Roslyn 是微软开源的 .NET 编译平台。编译平台支持 C# 和 Visual Basic 代码编译,并提供丰富的语法分析 API。
7+
8+
语法树(SyntaxTree)是一种由编译器 API 公开的基础数据结构。这些树描述了C#源代码的词法和语法结构。
9+
10+
利用语法分析 API可以将一段C#代码翻译成等效的语法树代码。
11+
关于语法分析请查看官方文档
12+
https://docs.microsoft.com/zh-cn/dotnet/csharp/roslyn-sdk/get-started/syntax-analysis
13+
14+
## 应用场景
15+
16+
* 需要动态编译的,如在开发微服务中动态生成代理类,项目的插件化改造等
17+
* 需要动态生成C#代码脚本的,如项目模板生成器,C#脚本生成工具等
18+
* 需要分析C#使用场景,如代码安全性审查等
19+
* ...
20+
## 介绍
21+
22+
RoslynSyntaxTool利用语法分析 API,提供以下功能:
23+
24+
* 将指定的C#代码转为等效的语法树代码
25+
* 将语法树代码还原为C#代码
26+
* 图形化查看语法树结构
27+
* 查看语法树节点属性详情
628

729
这是独立开发者的一个开源项目, 希望得到您的意见反馈,请将Bugs汇报至我的邮箱
830

931
![avatar](https://github.com/MatoApps/RoslynSyntaxTool/blob/master/RST/screenshot.png)
10-
32+
33+
## 感谢
34+
35+
KirillOsenkov的RoslynOuter项目,链接: https://github.com/KirillOsenkov/RoslynQuoter
36+
37+
语法树代码生成器代码借鉴自此项目
38+
1139
## 更新内容:
1240

1341

1442
Date | Version | Content
1543
:----------: | :-----------: | :-----------
1644
V1.0 | 2021-3-16 | 初始版本
45+
V2.0 | 2022-5-16 | 1. 升级项目框架至.Net 6.0 2. 增加ConvertToCSharp页面 3. 更新README
1746

1847

1948

RST/rst.zip

16.8 MB
Binary file not shown.

RST/screenshot3.png

60.9 KB
Loading

0 commit comments

Comments
 (0)