roslyn相关内容
简介 考虑这个简单(和糟糕)的 C# 类: 使用系统;命名空间 N{静态类 C{静态无效 M(日期时间 d){如果(d == 空)Console.WriteLine(“是");别的Console.WriteLine(“否");}静态无效 L(对象 o){如果(o 可以为空)Console.WriteLine(“是");别的Console.WriteLine(“否");}}} M 和 L
..
我正在尝试在 Visual Studio 扩展包中的 VSSDK 和 Roslyn SDK 之间架起桥梁,但对此一直很困难.使用 FindToken(offset) 时,Visual Studio 给出的 ActivePoint.AbsoluteCharOffset 与我从 Roslyn 获得的元素不匹配.我相当确定这与每一方如何根据我当前的工作 hack 计算 EOL 字符有关,但我并不是 10
..
我刚刚尝试安装 Visual Studio 2015,在尝试编译旧项目时,收到警告 CS0675 用于符号扩展操作数的按位或运算符;考虑首先转换为较小的无符号类型 对于一段在 Visual Studio 2013 中编译时没有给出相同警告的代码.我发现重现所需的只是这段非常简单的代码: short a = 0;int b = 0;a |=(短)b; 现在,我已经阅读了 这个问题,我
..
我刚刚在 Azure 上创建了一个新的 VM(使用库中 Azure 团队提供的图像)和 即将推出的 Visual Studio 2014 的 CTP 版本 昨天在网上出现以测试它,特别是为了使用新的 C# 6.0 功能. 但是,它不提供开箱即用的 C# 6.0 支持,因为没有任何语言扩展(主构造函数、属性初始值设定项、安全导航操作符)在那里工作. MSDN 上的一篇博客文章 建议将以下
..
在 Visual Studio 2015 中使用 Roslyn API,我可以将对象实例转换为源代码吗?我可以创建一个像“.ToSourceCode()"这样的扩展方法,如下所示? class Foo { }课程计划{静态字符串 classSourceCode = "class Foo { }";静态无效主(){var 实例 = new Foo();var instanceSourceCode
..
我正在编写一个 Roslyn 诊断分析器,它应该适用于 VS2015 及更高版本.我想知道最新版本的 Microsoft.CodeAnalysis 我可以在我的项目中使用并且仍然支持 VS2015.我需要使用 Roslyn 1.2.0 (AnalysisContext.EnableConcurrentExecution) 中添加的 API,但我认为 VS2015 不包含该版本的 Roslyn(II
..
安装 VS 2015 后,从命令行运行 csc.exe 会导致此消息显示到控制台: 此编译器作为 Microsoft (R) .NET Framework 的一部分提供,但仅支持最高 C# 5 的语言版本,这不再是最新版本.对于支持较新版本 C# 的编译器编程语言,见http://go.microsoft.com/fwlink/?LinkID=533240> 该链接重定向到 Roslyn
..
我正在尝试使用 Visual Studio 2015 和 .NET 4.5.1 创建 Web 应用程序.当我发布网站时,visual studio 创建名为 roslyn 的文件夹. 我知道它用于即时编译代码,但不幸的是,我的托管服务提供商不允许我在他们的服务器上执行编译器. 如何像以前版本的 Visual Studio 那样在没有 roslyn 的情况下发布网站? 编辑:我在尝
..
我认为这是一个编译器错误. 以下控制台应用程序在使用 VS 2015 编译时可以完美地编译和执行: 命名空间 ConsoleApplication1{课程计划{静态无效主(字符串 [] args){var x = MyStruct.Empty;}公共结构 MyStruct{公共静态只读 MyStruct Empty = new MyStruct();}}} 但现在变得很奇怪:这段代码可以
..
我正在 Visual Studio 2015 CTP 中试用 C# 6.0 的新功能,但我的项目未能在 TFS 2013 和 Visual Studio Online. 我了解 Visual Studio 使用新的 Roslyn 编译器,该编译器取代了本机 .NET 编译器,因此使用了 TFS 构建代理无法编译. 我的问题是如何在构建代理上(以及在 Visual Studio Onli
..
有一堆相关问题,尽管大多数答案定义em> Roslyn 和/或提供对某些问题的“修复"(exe、托管服务提供商等) 我似乎无法追查到的是 /bin/roslyn 中的“为什么"和“为什么"(也许仅在 ASP.Net MVC/Web API 的上下文中). 我遇到了类似的问题(托管 - .exe 限制、对 4.6 的支持等),我的“修复"是“只是部署到 Azure"(当然一切正常).但实
..
我正在使用 C# 6.0 测试 Visual Studio 2015,但语言功能不起作用.在 MVC Web 应用程序中,以下代码确实可以编译: if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName)){//这里有更多逻辑...} 但是,当我通过 Debug 和 IIS Express 运行应用程序时,出现以下错误: CS1525:
..
我正在尝试运行从 TFS 源代码管理中检索的 Asp.net MVC 项目.我已经添加了所有程序集引用,并且能够成功构建和编译而没有任何错误或警告. 但我在浏览器中收到以下错误: 找不到路径的一部分'C:\B8akWorkspace\B8akProject\B8akSolution\B8AK.Portal\bin\roslyn\csc.exe'. 这是错误页面的完整屏幕截图.
..
我想使用 Roslyn 加载 C# 源代码并将其写入另一个文件,用替代品替换关键字.示例: for (int i=0; i 翻译为 foobar (int i=0; i 这种操作的语法是什么样的? 解决方案 我不知道这会有多好,但是你可以用另一个 ForKeyword 替换每个 ForKeyword 标记 标记,但这次使用您的自定义文本.为此,您可以使用 CSharpSyntaxR
..
在旧的 .NET 中,我们曾经能够运行 csc 编译器来编译单个 .cs 文件或多个文件. 在 .NET Core 中,我们有 dotnet build,它坚持拥有一个合适的项目文件.是否有独立的命令行编译器允许在没有项目的情况下编译源代码文件(并在同一命令行上列出引用的依赖项)? 在 Linux 上,当我安装了旧的 csc 和新的 .NET Core 时,我得到以下时间: [roo
..
TL;DR 如何让运行时在 .NET Core 5 中为在运行时编译的涉及 .NET 4.7.2 代码的 C# 插件选择正确的程序集? 背景 我有一个 .NET 4.7.2 应用程序,根据一些可配置的插件,该应用程序的某些模块的行为有所不同.我在运行时编译 C# 插件的 .NET 4.7.2 程序集中有以下代码. public OperationResultCompileCl
..
回到 2008 年的 PDC,在 Anders Hejlsberg 的 C# 未来演讲中,他谈到了重写 C# 编译器并提供“编译器即服务",当时我确实有这样的印象,他们的目标是 C# 4.0 时间框架为此.... 嗯,有人知道这是什么状态吗?它似乎没有出现在 CTP 中,而且除了指向 2008 PDC 会议视频的链接(大约一个小时后)之外,WEB 上几乎没有任何信息. 这项倡议是否已经
..
有没有办法使用 Roslyn 和 .NET Core 生成 C# 代码.我尝试使用 Microsoft.CodeAnalysis.CSharp 包中的 SyntaxFactory.我目前遇到的问题是从中获取格式正确的代码作为文本. 到目前为止我看到的所有样本都使用类似的东西 var ws = new CustomWorkspace();ws.Options.WithChangedOptio
..
我是 .Net Core 的新手,我正在尝试基于它构建一个构建系统.作为该项目的一部分,我创建了一个抽象类,阐明了构建任务应该实现的内容,并将其塞入共享库中. 可执行项目引用此库并扫描项目目录以查找特殊命名的目录,然后检查其中是否有任何 .cs 文件.加载这些脚本,然后尝试使用通过 Microsoft.CodeAnalysis 和朋友提供的工具进行编译. 在这种背景下,我在编译阶段遇到
..
我正在尝试将一些 .net 代码移植到新的 Core 运行时,但我在移植一些即时编译时遇到了麻烦. 要继续,它总是要求我提供 System.Runtime 和 mscorlib 的引用,但不知道如何引用它们. 顺便提一下,我不能引用 Framework 4.6,因为该项目必须发布到带有 .net Core 的 Linux 机器上. 这是最低代码: string testCla
..