roslyn

    9

    3답변

    사용자 작성 C# 코드 조각을 구문 분석하고 메서드 호출로 로컬에 정의되지 않은 모든 변수를 바꿔야합니다. 나는. public class Foo { public dynamic Bar() { return Math.Min(x + width, maxWidth); } } 이되고있다 : 나는 문자열을 검사 Microsoft

    0

    1답변

    Roslyn을 사용하여 대규모 솔루션에서 발생하는 모든 DI를 매핑하려고합니다. 내 목표는 내가 시각화 할 수있는 나무를 얻는 것입니다. 필자는 구문 트리를 구문 분석하여 모든 클래스와 인터페이스 및 해당 메서드와 정의 된 프로젝트를 찾을 수 있었지만 이제는 자신이 갇혀있는 것으로 나타났습니다. Roslyn과 같은 종류의 분석을 수행하는 올바른 방법은 무엇

    1

    2답변

    저는 Visual Studio에서 Workspace를 사용하여 roslyn과 함께 사용하려고합니다. How to get reference to 'Roslyn' Workspace object from IVsSolution? 내가 정확히 동일한 코드 작성 : 나는 이것처럼, 그것에 대해 몇 가지 주제를 발견 var componentModel = (ICompon

    1

    1답변

    Install-Package Microsoft.CodeAnalysis -Pre을 사용하여 내 솔루션 참조를 업데이트 한 결과, DiagnosticDescriptor의 생성자가 두 개의 인수를 더 받아 들인 것처럼 보입니다. isEnabledByDefault : bool - 기본 customTags으로 활성화되어 진정한 진단하는 경우 : - 진단을위한 선택적

    3

    1답변

    필자는 .Net Complier Platform (Roslyn)을 사용하여 코딩 표준을 시행하기 시작했습니다. 내가 고민하고있는 한 가지 문제점은 쓸모없는 블록을 발견하고 잡는 것입니다. try...catch 블록. 예를 들어 : try { // So some work } catch(Exception ex) { // Log the

    4

    1답변

    Roslyn의 Compilation.GetTypeByMetaDataName() 메서드를 사용하여 중첩 클래스를 검색 할 수없는 것 같습니다. 예를 들어 : var tree = CSharpSyntaxTree.ParseText(@" using System; namespace MyNamespace { public class MyClass

    1

    1답변

    Syntax 클래스가 어떤 네임 스페이스인지 알 수 있습니까? 나는 nuget을 통해 모든 로슬린 패키지를 설치하지만 난에 표현식 구문 객체를 생성하는 정적 팩토리 메소드를 네임 스페이스 모르겠어요. 는 또한 웹 로슬린의 많은 예제는이 네임 스페이스를 사용하는 using Roslyn.Compilers; using Roslyn.Compilers.CSharp

    0

    1답변

    컴파일 된 C# 코드 어셈블리에서 CI를 읽고 모든 클래스를 전체 구문 트리와 함께 반환하는 컴파일러 또는 코드 생성기를 작성하고 싶습니다. 어떻게 Roslyn을 사용하여이 작업을 수행 할 수 있습니까?

    6

    1답변

    roslyn Formatter.Format() 메서드를 사용하여 일부 C#을 포맷하고 있습니다. MSBuildWorkspace.Create()을 사용하여 만들 수있는 Workspace 개체를 매개 변수 중 하나가 사용합니다. 그러나 코드를 실행할 때 작업 영역이 지원되는 언어가 없기 때문에 런타임 예외가 발생합니다. 콘솔 응용 프로그램에서 이걸 실행하면 제

    1

    1답변

    "진단 분석기 "라이브러리 프로젝트의 결과를 참조하는 프로젝트"A "가 있습니다. 분석기가 프로젝트 "A"에 추가되면 분석기가 "분석기"노드 아래에 나열되고 그 안에 규칙이 표시됩니다. "진단 분석기"라이브러리에서 변경 한 내용은 새로 고쳐지지 않습니다. 분석기를 새로 고치는 유일한 방법은 Visual Studio를 닫고 다시 여는 것입니다. 두 프로젝트