安装.NET Compiler Platform SDK时,您将获得Visual Studio模板,以创建“代码修正分析器(NuGet + VSIX)”和“代码重构(VSIX)”。将Roslyn代码重构为NuGet包
为什么没有用于发送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指向的数据何时发生变化。而且我不想用一条她无法摆脱的曲线来惹恼用户。
你可以扩展你的例子吗?你确定这个只应用于某些项目的重构实际上并不是变相的分析器/代码修正吗? –
@Damien_The_Unbeliever thx,我更新了我的问题。 –