1 //-----------------------------------------------------------------------------
2 // Copyright (c) Microsoft Corporation.  All rights reserved.
3 //-----------------------------------------------------------------------------
4 namespace System.ServiceModel
5 {
6     using System;
7     using System.Reflection;
8 
9     static class ServiceModelAttributeTargets
10     {
11         public const AttributeTargets ServiceContract = AttributeTargets.Interface | AttributeTargets.Class;
12         public const AttributeTargets OperationContract = AttributeTargets.Method;
13         public const AttributeTargets MessageContract = AttributeTargets.Class | AttributeTargets.Struct;
14         public const AttributeTargets MessageMember = AttributeTargets.Property | AttributeTargets.Field;
15         public const AttributeTargets Parameter = AttributeTargets.ReturnValue | AttributeTargets.Parameter;
16 
17         public const AttributeTargets ServiceBehavior = AttributeTargets.Class;
18         public const AttributeTargets CallbackBehavior = AttributeTargets.Class;
19         public const AttributeTargets ClientBehavior = AttributeTargets.Interface;
20         public const AttributeTargets ContractBehavior = ServiceBehavior | ClientBehavior;
21         public const AttributeTargets OperationBehavior = AttributeTargets.Method;
22     }
23 }