私は次のものを持っています:
private int order;
public int Order {
get { return order; }
set {
if ((value < 0) || (value > 99)) {
throw new Exception(string.Format("{0} must be between 0 and 99", value.ToString()));
} else {
order = value;
}
}
}
これはここで呼ばれます:
try {
property.SetValue(reference, convertedValue, null);
} catch (Exception e) {
var a = e;
}
50の値を設定すると、すべてが正常に機能します。値を123に設定してデバッグを進めると、property.SetValue行に移動し、次はこれを取得して、最初のコードスニペットの "}else{"コードブロックの終わりを指します。
System.Exception was unhandled by user code
HResult=-2146233088
Message=123 must be between 0 and 99
Source=Test.Storage
StackTrace:
at Storage.Models.Reference.set_Order(Int32 value) in C:\Code K\139- Aug 23\Common\Storage\Models\Reference.cs:line 22
InnerException:
誰かが例外が処理されない理由を説明できますか?property.SetValueを囲むtryループでキャッチされない理由がわかりません。var a=eにデバッグポイントがあります。しかし、そこには行きません。