roslyn相关内容
众所周知,Roslyn 语法树是不可变的,因此在进行更改后,您需要获得一个新节点. 我正在尝试使用文档编辑器更新文档,但我不断收到错误消息,提示在语法树中找不到该节点. public static T FindEquivalentNode(本文档newDocument,T节点)其中 T : CSharpSyntaxNode{var root = newDocument.GetSyntaxR
..
在 Roslyn 主页上,有一个指向“最终用户预览"的链接,可将您带到 Microsoft Connect 站点. http://msdn.microsoft.com/en-us/vstudio/roslyn.aspx 我没有看到需要填写的表格,为了下载最终用户预览,我实际看到的是“我的仪表板"区域.所以我在“产品目录"中搜索“rosyln"但没有结果出现. Roslyn 是否仍
..
为了给我的用户更大的灵活性并让他们编写自己的表达式,我希望允许他们在文本字段中编写非常简单的 C# 语句,这些语句在服务器端执行以进行一些自定义计算.我正在与 Roslyn 一起存档. 这里. 我让用户在评估函数中注入代码,如下所示: string codeToCompile = @"使用系统;使用 System.Collections.Generic;命名空间评估器{公开课评估员{公
..
TL;DR 如何让运行时在 .NET Core 5 中为涉及 .NET 4.7.2 代码的在运行时编译的 C# 插件选择正确的程序集? 背景 我有一个 .NET 4.7.2 应用程序,在该应用程序上,某些模块根据一些可配置的插件表现不同.我在运行时编译 C# 插件的 .NET 4.7.2 程序集中有以下代码. public OperationResultCompileClas
..
我打算在 MVC 6 项目中使用新的 Roslyn 代码分析 API. 但是,当我运行此代码时: string pathToSolution = @"..\..\..\WebApplicationComplex.sln";const string projectName = "RoslynWebAPIProject";MSBuildWorkspace 工作区 = MSBuildWorksp
..
我一直在处理一个问题,我假设它是特定于环境的.当我向 CodeFixProvider 中添加任何函数时,我安装并重新安装了 Roslyn 模板参考与否).VS 在尝试打开预览窗口时出现系统聚合异常: 这是完整的代码修复提供程序,唯一修改的是添加新功能 [ExportCodeFixProvider(LanguageNames.CSharp, Name = nameof(AggregateBu
..
我创建了以下对象来遍历我的构造函数: 内部类 ConstructorWalker : CSharpSyntaxWalker{私有字符串 className = String.Empty;私有只读语义模型语义模型;private readonly Action打回来;public ConstructorWalker(文档文档,Action回调){this.semanticModel = docum
..
我正在学习 Roslyn 并第一次尝试它.我编写了一个小代码片段来加载解决方案并获取对工作区的引用. IWorkspace 工作区 = Workspace.LoadSolution(solutionPath);foreach(workspace.CurrentSolution.Projects 中的 IProject 项目){CommonCompilation objCompilation =
..
我正在尝试从 Visual Studio 获取 Workspace,以便与 roslyn 一起使用. 我找到了一些关于这个的话题,比如这个:如何从 IVsSolution 获取对“Roslyn"工作区对象的引用? 我写了完全相同的代码: var componentModel = (IComponentModel)Microsoft.VisualStudio.Shell.Package
..
我正在尝试在我的应用程序中使用 Roslyn.我为此添加了 NuGet 包(Microsoft.CodeAnalysis.CSharp).事实证明,这个包依赖于许多其他包: 它们中的大多数在 .NET Framework 上似乎未使用(例如,System.Runtime 提供了诸如 Int32 之类的类型). 这些包的大小与实际使用的内容之间存在令人难以置信的对比.许多数据似乎是翻译:
..
我最近刚刚研究了 Roslyn 编译器的东西,我想知道一些可能性.我正在尝试使用 features/tuples 分支从 Roslyn 存储库构建 Roslyn 编译器,并替换 VS15Preview\MSBuild\15.0\Bin 文件夹中所需的 DLL.但是当我替换 DLL 并构建控制台应用程序项目时,我收到以下错误消息 严重代码描述项目文件行抑制状态 错误指定的任务可执行文件“
..
我在当前发布的 Visual Studio 2015 RC 中找不到任何 Roslyn 扩展的项目模板.它们在候选版本中不可用还是隐藏得很好? 我遗漏了整个 Roslyn 文件夹.我已经安装了 Visual Studio 2015 SDK RC,我还有什么遗漏吗? 解决方案 他们已移至 Extensibility 文件夹,并且名称中没有 Roslyn.相反,他们以他们实际所做的事情命
..
如何在 CatchDeclaration 中获取实例的符号信息?基本上我想获取符号,以便我稍后可以比较它以查看该符号上调用了一个方法. 基本上我有这个:catch (Exception ex) {} 并且我想要“ex"的 SymbolInfo. 我得到了 catch 声明: var catchDeclaration = catchClause.DescendantNodes().Of
..
在升级项目中的依赖项后,roslyn 编译器开始在以下代码中抛出缺少方法异常,更新前有效: CSharpCompilation 编译 = CreateCompilation(templateId, syntaxTrees, metadataReferences);EmitResult 编译结果;generateAssembly = string.Empty;使用 (var stream = ne
..
我正在使用 roslyn API 和 ace 文本编辑器来创建 Web IDE. 当我将鼠标悬停在数据上时,我需要它在给定位置找到符号.这在某些情况下通过调用 roslyn 方法起作用: var symbol = SymbolFinder.FindSymbolAtPosition(semanticModel, offset, dotNetCodeManager.Solution.Works
..
我正在尝试使用 Roslyn Microsoft.Codeanalysis 库实现以下基于 csc 命令的编译 csc/target:library/out:UserControlBase.dll UserControlBase.cs/addmodule:"c:\artifacts\MyLib.netmodule" 以下是与 Roslyn 相同的实现 var compiler = await
..
需要使用 roslyn 将继承添加到某些界面. 我描述了这个类,但不知道如何在以下结构中设置继承: ClassDeclarationSyntax lClassDeclarationSyntax =语法.ClassDeclaration(Syntax.List(lAttributeListSyntax),语法.TokenList(lTokens),Syntax.Identifier(_class
..
所以我正在尝试使用 Roslyn 创建一个动态类型(在运行时).这个要求的整个背景故事太长了.但是,我确实需要创建一个具有 x 多个属性的新类型,我试图在其中输入字典中的属性名称和初始值 这是相关的代码 private void CreateAssembly(Dictionary propertiesToEmit){if (ourAssembly == null){StringBuilde
..
我正在使用 Roslyn API 来生成和编译一个类.生成的类如下所示: 命名空间 MyCompany.Product{公共类测试类{公共无效配置(字符串ID){}}} 然而,当我编译它时,Emit(ted) 结果给出: 错误 CS0246:找不到类型或命名空间名称“字符串"(您是否缺少 using 指令或程序集引用?) 这是执行编译的方法: private static re
..
我正在使用 Roslyn 的 CSharpSyntaxRewriter重写以下内容: string myString = "你好";myString += "世界!"; 到: string myString = "你好";myString += "世界!";Log("myString", myString); 我的语法重写器重写了 VisitAssignmentExpression 如下.
..