Как проверить на IncludeExceptionDetailInFaults
Я могу проверить, установлено ли поведение с помощью:
Attribute.GetCustomAttribute(typeof(MyService), typeof(ServiceBehavior))
Как проверить, определено ли определенное свойство в атрибуте ServiceBehavior? например IncludeExceptionDetailInFaults:
[ServiceBehavior(IncludeExceptionDetailInFaults = true)]
1 ответ
На самом деле это было просто, мне нужно было разыграть атрибут, а затем проверить свойство:
Attribute behavior = Attribute.GetCustomAttribute(myService.GetType(), typeof(ServiceBehaviorAttribute));
if (behavior != null)
{
if (!((ServiceBehaviorAttribute)behavior).IncludeExceptionDetailInFaults)
{
throw new Exception(); // or whatever
}
}
Сервис будет что-то вроде:
[ServiceBehavior(IncludeExceptionDetailInFaults = true)]
public class MyService
{ }
Надеюсь, это кому-нибудь поможет.