2010-11-16 42 views
1

我正在评估设置使用WCF反对使用MVC(我目前拥有)的REST系统。我已经运行了它,但希望能够复制我用MVC获得的一些功能。是否可以在设置服务路由时设置默认操作

也就是说,我需要能够指定'默认操作'的WCF等价物。虽然服务路线有一个默认属性,但我还没有找到关于在这里设置什么的文档(假设它甚至在WCF中使用)。

下一步,我可以看到,将写我自己的服务主机工厂,并有一个自定义属性,但这需要我一步到位(可能无论如何),因为我已经使用Autofac DI服务依赖。

是否可以通过WCF使用REST实现默认的“操作合同”?

回答

1

创建使用REST 4.0模板的新项目包括以下内容:

[WebGet(UriTemplate = "")] 
public List<SampleItem> GetCollection() 
{ 
// TODO: Replace the current implementation to return a collection of SampleItem instances 
return new List<SampleItem>() { new SampleItem() { Id = 1, StringValue = "Hello" } }; 
} 

的/服务1 /帮助屏幕然后列出了以下内容:

Uri Method          Description 

GET Service at http://localhost:60888/Service1/ 

所以默认的“行动”是用空的UriTemplate指定。

+0

您还想要禁用WCF的服务帮助页面 - 2013-04-24 13:09:48

0

好吧,我觉得有点愚蠢,在WebGet属性URI模板做什么,我需要的,即:

[OperationContract] 
[WebGet(BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json, UriTemplate = "{id}")] 
User GetUser(String id); 

供应我适合深夜编码。

相关问题