6

私は少し愚かな問題を抱えています。MS Roslyn の使用を開始し、ウォークスルーを実行しようとしていますが、最初にエラーが発生しました...

エラー CS0117: 'Roslyn.Compilers.CSharp.SyntaxTree' に 'ParseCompilationUnit' の定義が含まれていません

なぜそれが起こったのかわかりません...おそらくあなたの1人が同じ問題を抱えていました.

私のソースコード:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Roslyn.Compilers;
using Roslyn.Compilers.CSharp;
using Roslyn.Services;
using Roslyn.Services.CSharp;

namespace gettingstarted2
{
    class Program
    {
        static void Main(string[] args)
        {
            SyntaxTree tree = SyntaxTree.ParseCompilationUnit(
                @"using System;
                using System.Collections;
                using System.Linq;
                using System.Text;

                namespace HelloWorld
                {
                    class Program
                    {
                        static void Main(string[] args)
                        {
                            Console.WriteLine(""Hello, World!"");
                        }
                    }
                }");

            var root = (CompilationUnitSyntax)tree.GetRoot();

        }
    }
}
4

2 に答える 2

5

フォローしていたウォークスルーで言及された日付はいつですか? このメソッドは、9 月の CTP でからParseCompilationUnitに名前が変更されました。ParseText以前の CTP がインストールされている場合は、最新の CTP をインストールしたときにウォークスルーが適切に更新されなかった可能性があります。

CTP をアンインストールして再インストールするか、修復を使用することをお勧めします。

于 2013-03-03T22:56:05.577 に答える
0

@Antonは最新のものです... Nugetを使用してRoslynをインストールできます。

パッケージ マネージャー コンソールで次のコマンドを実行します。 PM> Install-Package Roslyn

于 2013-08-30T15:26:47.637 に答える