我创建了一个 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();
}
和一个配置行:
config.SetServiceOperationAccessRule("SplitString", ServiceOperationRights.All);
但是,无论我如何指定网址,我都无法填写要填写的文本参数。(它始终为空)。
所以:
http://localhost/myservice.svc/SplitString/testtext
不起作用(它抛出我的异常,因为参数为空)。应该使用什么正确的 url 格式(或 UriTemplate)来使参数起作用?
我发现的 odata 和 WebGet 的唯一示例只有一个没有任何参数的示例方法。