コンパイラ エラー CS1113
値の型 'name' で定義された拡張メソッド 'name' は、デリゲートを作成するために使用できません。
クラス型に対して定義された拡張メソッドは、デリゲートを作成するために使用できます。 値の型に対して定義された拡張メソッドは使用できません。
拡張メソッドをクラス型に関連付けます。
メソッドを構造体の通常のメソッドにします。
次の例では、CS1113 が生成されます。
C#
// cs1113.cs
using System;
public static class Extensions
{
public static S ExtMethod(this S s)
{
return s;
}
}
public struct S
{
}
public class Test
{
static int Main()
{
Func<S> f = new S().ExtMethod; // CS1113
return 1;
}
}
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。