Вопросы с тегом «roslyn»

Roslyn (также известная как платформа .NET Compiler Platform) предоставляет компиляторы C # и Visual Basic с открытым исходным кодом и API для анализа кода. Он позволяет создавать инструменты анализа кода с теми же API-интерфейсами, которые используются в Visual Studio.

30
Не удалось найти часть пути… bin \ roslyn \ csc.exe
Я пытаюсь запустить проект Asp.net MVC, полученный из системы контроля версий TFS. Я добавил все ссылки на сборки и смог успешно собрать и скомпилировать без каких-либо ошибок или предупреждений. Но я получаю следующую ошибку в браузере: Не удалось найти часть пути 'C: \ B8akWorkspace \ B8akProject \ B8akSolution \ B8AK.Portal …
813 c#  asp.net  .net  asp.net-mvc  roslyn 

5
Может ли интерактивное окно C # взаимодействовать с моим кодом?
В Visual Studio 2015 или более поздней версии я могу открыть «интерактивное окно C #» и запустить код: > 5 + 3 8 Это мило. Теперь, как я могу взаимодействовать с моим кодом - моими классами? Предположим, у меня есть открытый проект. > new Cog() (1,5): error CS0246: The type …
161 c#  .net  visual-studio  roslyn 

3
На каком языке написан компилятор C #?
Я посмотрел на исходный код по адресу http://referencesource.microsoft.com/ , и оказалось, что весь исходный код находится на C #. Я также рассмотрел исходный код для новой платформы компилятора C # ( Roslyn ), и он также находится в C #. Как это возможно? Компилятор языка C # написан на C …

5
Сборка VS2015 завершается неудачно без сообщения об ошибке с помощью Dynamic
Я писал модульный тест для кода, который возвращал JSON. Тип, который он возвращает, является анонимным, поэтому я подумал, что для проверки значений в нем я просто приведу объект к a, dynamicчтобы сделать свои утверждения. Однако, когда я делаю это, моя сборка завершается неудачно, но у меня нет сообщений об ошибках. …

7
Функции C # 6.0, не работающие с Visual Studio 2015
Я тестирую Visual Studio 2015 с C # 6.0, но языковые функции не работают. В веб-приложении MVC следующий код компилируется: if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName)) { // More logic here... } Однако, когда я запускаю приложение через Debug и IIS Express, я получаю следующую ошибку: CS1525: недопустимый термин "." Как включить эти функции?

1
Используются ли повторно узлы синтаксиса Roslyn?
Я изучал Roslyn CTP, и, хотя он решает ту же проблему, что и API дерева выражений , оба неизменяемы, но Roslyn делает это совершенно по-другому: Expressionузлы не имеют ссылки на родительский узел, изменяются с помощью a ExpressionVisitor, поэтому большие части можно использовать повторно. Roslyn SyntaxNode, с другой стороны, имеет ссылку …

2
Оценивается ли nameof () во время компиляции?
В C # 6 вы можете использовать nameof()оператор для получения строки, содержащей имя переменной или типа. Это оценивается во время компиляции или во время выполнения через какой-нибудь Roslyn API?
114 c#  roslyn  c#-6.0 

4
Microsoft Roslyn против CodeDom
Из вчерашнего пресс-релиза на InfoWorld о новом Microsoft Roslyn : Наиболее очевидным преимуществом такого «деконструированного» компилятора является то, что он позволяет вызывать весь процесс компиляции-выполнения из приложений .Net. Хейлсберг продемонстрировал программу на C #, которая передает компилятору C # несколько фрагментов кода в виде строк; компилятор вернул результирующий ассемблерный код …
111 .net  codedom  roslyn 

3
Как обновить msbuild до C # 6?
Я хочу использовать C # 6 в своем проекте (нулевое распространение, другие функции). Я установил VS 2015 на свой компьютер, он отлично работает и создает тестовый код вроде var user = new SingleUserModel(); //all model fields are null var test = user.User?.Avatar?["blah"]; Но когда я помещаю свой проект в репо, …

5
Использование System.Dynamic в Roslyn
Я изменил пример, который поставляется с новой версией Roslyn, которая была выпущена вчера, чтобы использовать динамический и ExpandoObject, но я получаю ошибку компилятора, которую я не знаю, как исправить. Ошибка: (7,21): ошибка CS0656: отсутствует обязательный член компилятора Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create А динамику в новом компиляторе пока нельзя использовать? Как я могу это …
96 c#  roslyn 

4
Roslyn не удалось скомпилировать код
После того, как я перенес свой проект с VS2013 на VS2015, проект больше не строится. Ошибка компиляции возникает в следующем операторе LINQ: static void Main(string[] args) { decimal a, b; IEnumerable<dynamic> array = new string[] { "10", "20", "30" }; var result = (from v in array where decimal.TryParse(v, out …
95 c#  .net  linq  roslyn 

6
Опубликовать сайт без roslyn
Я пытаюсь создать веб-приложение с помощью Visual Studio 2015 и .NET 4.5.1. Когда я публикую веб-сайт, Visual Studio создает папку с именем roslyn. Я знаю, что он используется для компиляции кода на лету, но, к сожалению, мой хостинг-провайдер не позволяет мне запускать компилятор на своем сервере. Как опубликовать сайт без …

2
Почему классы асинхронных конечных автоматов (а не структуры) в Roslyn?
Давайте рассмотрим этот очень простой асинхронный метод: static async Task myMethodAsync() { await Task.Delay(500); } Когда я компилирую это с помощью VS2013 (до компилятора Roslyn), сгенерированный конечный автомат представляет собой структуру. private struct <myMethodAsync>d__0 : IAsyncStateMachine { ... void IAsyncStateMachine.MoveNext() { ... } } Когда я компилирую его с VS2015 …

3
C # переполнение поведения для непроверенной uint
Я тестировал этот код на https://dotnetfiddle.net/ : using System; public class Program { const float scale = 64 * 1024; public static void Main() { Console.WriteLine(unchecked((uint)(ulong)(1.2 * scale * scale + 1.5 * scale))); Console.WriteLine(unchecked((uint)(ulong)(scale* scale + 7))); } } Если я скомпилирую с .NET 4.7.2 я получу 859091763 7 …
10 c#  .net  overflow  roslyn  uint 

2
Почему мы получаем предупреждение о нулевой ссылке с возможным разыменованием, когда нулевая ссылка кажется невозможной?
Прочитав этот вопрос на HNQ, я продолжил читать о Nullable Reference Types в C # 8 и провел несколько экспериментов. Я очень хорошо знаю, что 9 раз из 10, или даже чаще, когда кто-то говорит: «Я нашел ошибку компилятора!» это на самом деле дизайн, и их собственное недоразумение. И так …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.