我已经在wcf中阅读了关于动态响应的示例http://msdn.microsoft.com/en-us/library/ee476510.aspx。 底部的样本非常适合我的目标。这就是我所做的:
[OperationContract]
[WebGet(UriTemplate = "/salaries({queryString})")]
Message GetSalaryByQuery(string queryString);
和我的GetSalaryByQuery-Method:
public Message GetSalaryByQuery(string querystring)
{
if (WebOperationContext.Current.IncomingRequest.Accept == "application/json")
return WebOperationContext.Current.CreateJsonResponse<Result>(Salary.GetSalaryByQueryJson(querystring));
else
return WebOperationContext.Current.CreateAtom10Response(Salary.GetSalaryByQuery(querystring));
}
这与我发现的例子非常相似。 但它不起作用。它说除了消息之外还有另一个参数。我用Google搜索了消息类,在我看来,无法在消息响应中添加参数。
有没有办法在请求中传递参数并获得带有消息对象的响应?
是否有其他方法可以获得动态响应?
提前致谢。
答案 0 :(得分:0)
我得到了它的工作。我刚删除了Metadata-Endpoint和行为。我的Web服务自己提供元数据,因此不需要定义mex-Metadata。