質問

を建設する際にはArgumentException、カップルに過度の負荷を取る文字列に無効な引数のパラメータの名前です。私は図のようになって更新するようにしてくださいこctor paramきを変更したいの方法のparamます。ある単純ないことを反映?

更新: の2つの回答です。きの両方の質問に対する答えや、その解決にないといけないと保守ます。(大丈夫、 小さな 頭痛もので...)を説明しました 並べ替え paramsを降は削除前のparam--思うひとつ忘れてはいけないの変更を例外を構築コードです。があるので、使用できるもの

Object.ReferenceEquals(myParam, <insert code here>)

必ず取り扱って関連するパラメーター?そのように、コンパイラがステップを防ぐため、私はひどく構築します。

と思ると疑うに"シンプル"のの質問が解決されない場合はその近刊。どうだ付けを用いた文字列.:)

役に立ちましたか?

解決

反射が不適切なためます。

またのを覚えていきたいです。

幸いなことにFxCop(またはチームシステムコードの解析)まで指摘して他のミスマッチ

他のヒント

を使用できる表現ツリーにこには、だいたいの高価なのであの奇syntax.E.g.

public void Resize(int newSize)
{
  if (newSize < 1)
  {
    throw new ArgumentException("Blah", NameOfVariable(() => newSize));
  }
  // ... whatever ...
}

がNameOfVariableのように定義されている。

public static string NameOfVariable(Expression<Func<object>> expressionTree)
{
   var expression = (UnaryExpression)expressionTree.Body;
   var memberExpression = (MemberExpression)expression.Operand;
   return memberExpression.Member.Name;
}

このもののぶ実行時に合格以外のものにUnaryExpressionにNameOfVariable.

くださればこのコードの原因ともなるFxCop文句として ジョー 記載利用FxCopのだろう最良の方法を行っています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top