C#的縮寫寫法

範例:

public class DatabaseContext : IDisposable
{
    private readonly IDbConnection _connection;

    public DatabaseContext(string connectionString)
    {
        _connection = new SqlConnection(connectionString);
    }

    public IDbConnection Connection => _connection;

    public void Dispose()
    {
        _connection?.Dispose();
    }
}

上面的 public IDbConnection Connection => _connection; 程式碼是一個 C# 自動屬性(auto property)的縮寫寫法,等同於:

public IDbConnection Connection {
    get {
        return _connection;
    }
}

這種用法可以讓我們更簡潔地定義一個只讀的屬性,讓外部程式碼可以訪問某個類的私有字段,同時又可以保護這個字段不被意外地修改。

Author image
關於 Richard Zheng
您已成功訂閱 Richard's NoteBook
歡迎回來!您已成功登入。
無法讓您登入。請再試一次。