WCF服务应用程序使用WebGet返回404

时间:2009-05-11 13:50:14

标签: c# wcf web-services http-status-code-404

我创建了最基本的WCF服务应用程序来进行一些原型设计,但我无法使WebGet实现工作。

这是我的界面:

[ServiceContract]
public interface IService
{
    [OperationContract]
    [WebGet(UriTemplate = "/rest/{value}")]
    string Test(string value);
}

以下是实施:

public string Test(string value)
{
    return string.Format("You entered: {0}", value);
}

但如果我在浏览器中转到http://localhost:3305/rest/Hello,我会得到404.我正在使用VS 2008网络服务器。

2 个答案:

答案 0 :(得分:4)

我认为你错过了实际的服务名称。

http://localhost:3305/yourservicename.svc/rest/Hello

答案 1 :(得分:1)

更新

config.SetServiceOperationAccessRule("*", ServiceOperationRights.All);

public static void InitializeService(DataServiceConfiguration config)
    {
        // TODO: set rules to indicate which entity sets and service operations are visible, updatable, etc.
        // Examples:
         config.SetEntitySetAccessRule("*", EntitySetRights.AllRead);
         config.SetServiceOperationAccessRule("*", ServiceOperationRights.All);
        //config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
    }