簡體   English   中英

當前上下文中不存在“ InitializeComponent”

[英]'InitializeComponent' does not exist in the current context

我正在使用Roslyn解析非常基本的WPF解決方案。 我設置了診斷程序,發現以下錯誤:

MainWindow.xaml.cs(25,13):錯誤CS0103:名稱'InitializeComponent'在當前上下文中不存在

錯誤CS5001:程序不包含適用於入口點的靜態“ Main”方法

任何想法如何解決這個問題?

UPDATE

所以我添加了一個主要方法,現在出現以下錯誤:

App.xaml.cs(20,17):錯誤CS1061:“應用程序”不包含“ InitializeComponent”的定義,並且找不到找到接受類型為“ App”的第一個參數的擴展方法“ InitializeComponent”使用指令還是程序集引用?)

MainWindow.xaml.cs(25,13):錯誤CS0103:名稱'InitializeComponent'在當前上下文中不存在

這是主要方法

public partial class App : Application
{
    [STAThread]
    public static void Main()
    {
        var app = new App();
        app.InitializeComponent();
        app.Run();
    }
}

如果要使用類似於以下代碼的方式加載此解決方案:

var ws = MSBuildWorkspace.Create();
var solution = await ws.OpenSolutionAsync(path);

那么問題是您沒有分析應該從.xaml文件生成的代碼。 可以通過將上面的代碼更改為:

var properties = new Dictionary<string, string> { ["DesignTimeBuild"] = "true" };
var ws = MSBuildWorkspace.Create(properties);
var solution = await ws.OpenSolutionAsync(path);

有關更多信息,另請參見https://github.com/dotnet/roslyn/issues/2779

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM