1. ホーム
  2. c#

[解決済み] あいまい一致の例外を回避する

2022-07-11 18:46:12

質問

静的メソッド パース を呼び出しています。これはコンパイル時にオブジェクトの型を知らないからです (私は知っていますが、オブジェクトは パース メソッドがあり、文字列を取ります)。

しかし、ambiguous match 例外が発生します。おそらく、オーバーロードされた多くの パース メソッドが多数存在し、それぞれが単一のオブジェクト (文字列、int、double など) を取っているためと思われます。

正しいメソッドに到達するために、メソッド呼び出しでより具体的になるにはどうしたらよいでしょうか ( パース(文字列s) ) に到達し、例外がスローされないようにするには、どうすればよいでしょうか。

私のコードはこのような感じです。

Type returnType = p.PropertyType;
object value = returnType.GetMethod("Parse").Invoke(null, new string[] { "1" });

どのように解決するのですか?

使用方法 この をオーバーロードして使用します。

returnType.GetMethod("Parse", new [] {typeof(string)})