2011-08-04 6 views
0

例外の配列を渡す必要があるAttributeを作成していますか?例外の配列を属性に渡す方法

[assembly: MyAttribute(ExceptionList = [typeof(System.Web.HttpException), typeof(System.Threading.ThreadAbortException])); 

あなたは例外にオブジェクトを渡したい場合は、それは不可能です。

はあなたが例外に種類を渡したい場合は、あなたがtypeofを使用することができます

[assembly: MyAttribute(ExceptionList = [System.Web.HttpException, System.Threading.ThreadAbortException]); 

答えて

1

を言ってみましょう。属性コンストラクタへの引数は、定数値(または特別な例外が行われる2つのタイプの式)のみです。

0

例外ではなくタイプのリストを渡す必要があります。これで始めるはずです

[AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = true)] 
sealed class MyAttribute : Attribute { 
    public MyAttribute(Type[] exceptionList) { 
    } 
} 

[MyAttribute(new Type[] { typeof(ArgumentException), typeof(OtherException) })] 
class Test { 
    ... 
}