.netwcfrest.net-4.0webinvoke

WCF REST Webinvoke not found


Following is the code i am using in my test app:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using System.ServiceModel.Description;
using System.IO;

namespace MyWCFServices
{
    [ServiceContract]
    interface IHelloWorldService
    {
        [OperationContract]
        String GetMessage(String name);

        //[OperationContract]
        //[WebInvoke(Method = "PUT",UriTemplate = "File/{fileName}")]
        //[WebContentType("application/octet-stream")]
        // bool UploadFile(string fileName, Stream fileContents); 
        [OperationContract]
        [WebInvoke(UriTemplate = "UploadFile/{fileName}")]
        void UploadFile(string fileName, Stream fileContent); 
    }
}

It gives and error on compilation for webinvoke. Any idea about the same ??


Solution

  • WebInvokeAttribute is in separate assembly System.ServiceModel.Web.dll. Did you reference that assembly? Also you must add using System.ServiceModel.Web;

    Edit:

    To use System.ServiceModel.Web.dll assembly you must use at least .NET 3.5 and you can't use .NET 4.0 Client Profile.