2016-07-27 40 views
0

我有一個單獨的類一樣,無效令牌';'類結構或接口成員聲明

public sealed class MainWindow 
{ 
    public Form MainWindowContainer { get; set; } 
    private static readonly Lazy<MainWindow> _mainWindow = new Lazy<MainWindow>(() => new MainWindow()); 
    // Error on this line 
    public static MainWindow Instance => _mainWindow.Value; 
    private MainWindow() 
    { 
     MainWindowContainer = Host.Local.FindSingle<Form>(GenericProperties.MainWindow); 
    } 
} 

在編譯時,我得到的錯誤是「無效標誌‘;’在類結構或接口成員聲明中「。請幫忙。

回答

3

你不能定義一個屬性的getter作爲拉姆達,只需更改到一個getter屬性

public static MainWindow Instance 
{ 
    get { return _mainWindow.Value; } 
} 

或更改lambda函數

public static Func<MainWindow> Instance => _mainValue.Value; 

根據您要如何訪問它

var win = MainWindow.Instance; 
// or 
var win = MainWindow.Instance(); 
相關問題