«roslyn» 태그된 질문

Roslyn (일명 .NET 컴파일러 플랫폼)은 풍부한 코드 분석 API와 함께 오픈 소스 C # 및 Visual Basic 컴파일러를 제공합니다. Visual Studio에서 사용하는 것과 동일한 API로 코드 분석 도구를 빌드 할 수 있습니다.

30
bin \ roslyn \ csc.exe 경로의 일부를 찾을 수 없습니다
TFS 소스 제어에서 가져온 Asp.net MVC 프로젝트를 실행하려고합니다. 모든 어셈블리 참조를 추가했으며 오류나 경고없이 성공적으로 빌드하고 컴파일 할 수 있습니다. 그러나 브라우저에 다음과 같은 오류가 발생합니다. 'C : \ B8akWorkspace \ B8akProject \ B8akSolution \ B8AK.Portal \ bin \ roslyn \ csc.exe'경로의 일부를 찾을 수 없습니다. 다음은 오류 페이지의 전체 …
811 c#  asp.net  .net  asp.net-mvc  roslyn 


3
C # 컴파일러는 어떤 언어로 작성됩니까?
http://referencesource.microsoft.com/ 에서 소스 코드를 살펴본 결과 모든 소스 코드가 C #에있는 것 같습니다. 또한 새로운 C # 컴파일러 플랫폼 ( Roslyn ) 의 소스 코드를 살펴 보았으며 C # 에도 있습니다. 어떻게 가능합니까? C # 언어 컴파일러는 C #으로 작성 되었습니까? 아니면 분명한 것이 빠져 있습니까? C # 컴파일러가 C …

5
VS2015 빌드가 Dynamic에서 오류 메시지없이 실패 함
JSON을 반환하는 코드에 단위 테스트를 작성했습니다. 그것이 반환하는 유형은 익명 유형이므로 그 값을 확인하고 객체를 어서 dynamic내 어설 션을 수행 한다고 생각했습니다 . 그러나 그렇게하면 빌드가 실패하지만 오류 메시지가 없습니다. 새로운 단위 테스트 프로젝트에서 매우 간단한 코드로 이것을 재현 할 수있었습니다. [TestMethod] public void TestMethod1() { var obj = new …

7
Visual Studio 2015에서 작동하지 않는 C # 6.0 기능
C # 6.0으로 Visual Studio 2015를 테스트하고 있지만 언어 기능이 작동하지 않습니다. MVC 웹 응용 프로그램에서 다음 코드는 컴파일됩니다. if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName)) { // More logic here... } 그러나 디버그 및 IIS Express를 통해 응용 프로그램을 실행하면 다음 오류가 발생합니다. CS1525 : 유효하지 않은 표현 용어 '.' 이 기능들을 어떻게 활성화합니까?

1
Roslyn SyntaxNodes는 재사용됩니까?
나는 Roslyn CTP를 살펴 보았고 , Expression tree API 와 비슷한 문제를 해결 하지만 둘 다 불변이지만 Roslyn은 상당히 다른 방식으로 그렇게합니다. Expression노드는 부모 노드에 대한 참조가없고 a를 사용하여 수정되므로 ExpressionVisitor큰 부분을 재사용 할 수 있습니다. 반면에 Roslyn의 SyntaxNode는 부모를 참조하므로 모든 노드는 효과적으로 재사용이 불가능한 블록이됩니다. 방법은 좋아 Update, …

2
nameof ()는 컴파일 타임에 평가됩니까?
C # 6에서는 nameof()연산자를 사용하여 변수 또는 형식의 이름이 포함 된 문자열을 가져올 수 있습니다 . 이것은 컴파일 타임에 평가됩니까, 아니면 일부 Roslyn API를 통해 런타임에 평가됩니까?
114 c#  roslyn  c#-6.0 

4
Microsoft Roslyn 대 CodeDom
A로부터 보도 자료 새로운 관한 인포 월드에 어제 마이크로 소프트 로슬린 : 이러한 종류의 "해체 된"컴파일러의 가장 분명한 장점은 전체 컴파일-실행 프로세스가 .Net 애플리케이션 내에서 호출 될 수 있다는 것입니다. Hejlsberg는 몇 가지 코드 조각을 C # 컴파일러에 문자열로 전달하는 C # 프로그램을 시연했습니다. 컴파일러는 결과 IL 어셈블리 코드를 개체로 …
110 .net  codedom  roslyn 

3
msbuild를 C # 6으로 업그레이드하는 방법은 무엇입니까?
내 프로젝트에서 C # 6을 사용하고 싶습니다 (null 전파, 기타 기능). 내 PC에 VS 2015를 설치했으며 훌륭하게 작동하고 다음과 같은 테스트 코드를 빌드합니다. var user = new SingleUserModel(); //all model fields are null var test = user.User?.Avatar?["blah"]; 하지만 프로젝트를 저장소에 푸시하고 CI가 빌드를 시작하면 지원되지 않는 ?. CI 서버에도 VS2015를 …

5
Roslyn에서 System.Dynamic 사용
어제 출시 된 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 a) && decimal.TryParse("15", out b) …
95 c#  .net  linq  roslyn 

6
Roslyn없이 웹 사이트 게시
Visual Studio 2015 및 .NET 4.5.1을 사용하여 웹 응용 프로그램을 만들려고합니다. 웹 사이트를 게시하면 Visual Studio에서 roslyn. 나는 그것이 코드를 즉시 컴파일하는 데 사용된다는 것을 알고 있지만 불행히도 내 호스팅 공급자는 서버에서 컴파일러를 실행할 수 없습니다. roslyn이전 버전의 Visual Studio와 달리 웹 사이트를 게시하는 방법은 무엇입니까? 편집 : 내 웹 …

2
Roslyn에서 비동기 상태 머신 클래스 (구조체가 아님)가있는 이유는 무엇입니까?
이 매우 간단한 비동기 메서드를 고려해 봅시다. static async Task myMethodAsync() { await Task.Delay(500); } VS2013 (Pre Roslyn 컴파일러)으로 이것을 컴파일하면 생성 된 상태 머신이 구조체입니다. private struct <myMethodAsync>d__0 : IAsyncStateMachine { ... void IAsyncStateMachine.MoveNext() { ... } } VS2015 (Roslyn)로 컴파일 할 때 생성 된 코드는 다음과 같습니다. private …

3
확인되지 않은 uint에 대한 C # 오버 플로우 동작
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 그러나 Roslyn 또는 .NET Core를 수행하면 859091763 …
10 c#  .net  overflow  roslyn  uint 

2
null 참조가 불가능할 때 왜 역 참조 null 참조 경고가 발생합니까?
HNQ 에서이 질문 을 읽은 후에 C # 8의 Nullable Reference Types에 대해 읽고 몇 가지 실험을했습니다. 나는 누군가가 "컴파일러 버그를 발견했다!"라고 말할 때 10에서 9 번, 또는 더 자주 알고 있습니다. 이것은 실제로 의도적으로 설계된 것이며 자체 오해입니다. 그리고 오늘만이 기능을 살펴보기 시작 했으므로 분명히 잘 이해하지 못합니다. 이 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.