将Roslyn代码重构为NuGet包
本文关键字:NuGet 重构 Roslyn 代码 | 更新日期: 2023-09-27 18:17:40
当安装。net编译器平台SDK时,您将获得用于创建"带有代码修复(NuGet + VSIX)的分析器"answers"代码重构(VSIX)"的Visual Studio模板。
为什么没有一个用NuGet发布代码重构的模板(比如"代码重构(NuGet + VSIX)")?
是否有可能从NuGet包中添加代码重构提供程序(通过手动创建NuGet包)?
在每个项目的基础上安装代码重构提供程序不是很有意义吗?
编辑:我的用例是一个代码重构,它从无类型数据(如JSON)中生成一个c#类型。这基本上就是f#类型提供程序(尽管它们当然要强大得多)。这意味着用户创建了如下所示的类
[JsonProvider("http://example.com/data.json")]
public class ExampleData
{
}
,重构用从属性
中的url中获取的样例数据中的属性填充它:[JsonProvider("http://example.com/data.json")]
public class ExampleData
{
public string Property1 { get; private set; }
public int Property2 { get; private set; }
public void Load(Uri uri) { ... }
public void FromData(string data) { ... }
...
}
我不想创建分析器的原因是用户应该能够决定何时更新c#类型。因为我不知道URL指向的数据何时改变。而且我也不想让用户因为无法摆脱的弯弯曲曲的线条而烦恼。
目前不支持通过NuGet分发重构,但我们希望在将来添加。