C#でthis
キーワードのこの使用法の意味何ですか:C#、Linqのこのキーワード?
public static ExcelRow Hide(this ExcelRow row)
{
return row.Hide(true);
}
は、このLINQのですか?はいの場合、ExcelRow row
とthis ExcelRow row
の違いは何ですか?
注:これはスペルのバグではなく、間にポイントやその他のアクセサーがありません。
C#でthis
キーワードのこの使用法の意味何ですか:C#、Linqのこのキーワード?
public static ExcelRow Hide(this ExcelRow row)
{
return row.Hide(true);
}
は、このLINQのですか?はいの場合、ExcelRow row
とthis ExcelRow row
の違いは何ですか?
注:これはスペルのバグではなく、間にポイントやその他のアクセサーがありません。
これは、Hide
メソッドがExcelRow
タイプのインスタンスで呼び出すことができるExtension Methodであることを示しています。
これは、extension methodを意味します。これは、メソッドが呼び出されるExcelRowのインスタンスを参照します。
上記の方法は、拡張方法(msdn.microsoft.com/en-us/library/bb383977.aspx)です。シグネチャの「このExcelRow行」部分は、メソッドがexcelRowオブジェクトを拡張することを意味します。したがって、ExcelRowのインスタンスで使用することができます。例:ExcelRow row =新しいExcelRow(); row.Hide();定義のExcelRow部分(staticキーワードの後ろ)は、拡張メソッドがExcelRowタイプのインスタンスを返すことを意味します。