OData和自定义WCF WebGet方法

Toa*_*oad 4 .net c# wcf webget odata

我创建了一个OData端点(使用实体框架,WCF数据服务)

并添加了一个自定义测试WebGet测试方法,如下所示:

    [WebGet(UriTemplate = "{text}")]
    public IQueryable<string> SplitString(string text)
    {
        if (text == null) throw new DataServiceException("text not specified");
        var result = (from s in text.Split('-') orderby s select s);
        return result.AsQueryable();
    }
Run Code Online (Sandbox Code Playgroud)

和配置行:

    config.SetServiceOperationAccessRule("SplitString", ServiceOperationRights.All);
Run Code Online (Sandbox Code Playgroud)

但是,无论我如何指定url,我都无法填写文本参数.(它总是为空).

so:
http://localhost/myservice.svc/SplitString/testtext

不起作用(它抛出我的异常,因为param为null).用于使参数起作用的正确url格式(或UriTemplate)是什么?

我发现odata和WebGet的唯一例子只有一个没有任何参数的示例方法.

Vit*_*SFT 7

正确的方法是:/ myservice.svc/SplitString?testtext ='mystringvalue'

有关更多详细信息,请参阅此页面:http: //msdn.microsoft.com/en-us/library/cc668788.aspx