مرجع تخصصی برنامه نویسان

بزرگترین انجمن برنامه نویسان فارسی زبان

مشکل در custom attribute در wcf

دوشنبه, 25 تیر 1397 09:45

مشکل در custom attribute در wcf

چرا نمیشه یه attribute رو بالای operation ها استفاده کرد ؟ در واقع اصلا کار نمیکنه و انگار هیچ متایی رو به متدها اعمال نمی کنه.

مثلا کد زیر: (البته کار خاصی نمی کنه اما خب کلا وارد سازندش نمیشه)


    [AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = true)]
    public class UserAccessAttribute : Attribute
    {
        private string userRole;

        public UserAccessAttribute(string userRole)
        {
            this.userRole = userRole;
        }

        public string GetUserRole()
        {
            return userRole;
        }
    }

    [ServiceContract]
    public interface IServiceHello
    {
        [OperationContract]
        [WebGet(UriTemplate = "/Admin", ResponseFormat = WebMessageFormat.Json)]
        string SayHelloToAdmin();

        [OperationContract]
        [WebGet(UriTemplate = "/User", ResponseFormat = WebMessageFormat.Json)]
        string SayHelloToUser();

        [OperationContract]
        [WebGet(UriTemplate = "/Any", ResponseFormat = WebMessageFormat.Json)]
        string SayHelloToAnonymous();
    }

    public class ServiceHello : IServiceHello
    {
        [UserAccess("Admin")]
        public string SayHelloToAdmin()
        {
            return "Hello Admin";
        }

        [UserAccess("User")]
        public string SayHelloToAnonymous()
        {
            return "Hello";
        }

        [UserAccess("User")]
        public string SayHelloToUser()
        {
            return "Hello User";
        }
    }

وب کانفیگمم هم چیز خاصی نداره و اتصالش از نوع webhttpbindig هستش

ارسال پاسخ برای این تاپیک

ارسال پاسخ مخصوص اعضا سایت می باشد ! میتوانید با حساب کاربری خود وارد سایت شده یا ثبت نام کنید