paramsキーワードは実際に拡張メソッドでサポートされていませんか?C#でparamsと拡張メソッドを使用
paramsキーワードで拡張メソッドを作成すると、「Xに2つの引数を渡すためのオーバーロードされていないメソッド」が表示されることがわかりました。 Intellisenseは拡張メソッドを認識し、オブジェクト配列が必要であることを知っています。
ここではいくつかのサンプルコードです:
public static DalRow EasyRetrieveSingle(this DalRow dalRow, object[] parameters)
{
Dictionary<string, object> dic = new Dictionary<string, object>();
for (int i = 0; i < parameters.Length; i += 2)
dic.Add(parameters[i].ToString(), parameters[i + 1]);
List<DalRow> list = DalRow.RetrieveByFieldValues(dalRow.Structure, null, dic).Cast<DalRow>().ToList();
if (list.Count == 0) return null;
return list[0];
}
ここで(無駄に)それを呼び出すいくつかのサンプルコードがあります
(new X()).EasyRetrieveSingle(1, 2);
作品。あなたのコードスニペットに 'params'がありませんか? –
うわー!これはひどい頭が冷たくなければならない。質問に対する私の謝罪。 – Daniel
心配はいりません。あなたが感じるように恥ずかしいように、タイトルを変更しないでください、それは他の人々が同じ問題をグーグルに役立つのに役立ちます – johnc