【问题标题】:ServiceStack: Error calling serviceServiceStack:调用服务时出错
【发布时间】:2013-06-06 14:33:25
【问题描述】:

我已经实现了一个 ServiceStack 示例服务,就像在文档中一样 - github.com/ServiceStack/ServiceStack/wiki/Create-your-first-webservice

问题是当我尝试调用它时,我得到了这些错误:

"cannot convert from 'string' to 'ServiceStack.ServiceHost.IReturnVoid'"

The best overloaded method match for 'ServiceStack.ServiceClient.Web.ServiceClientBase.Get(ServiceStack.ServiceHost.IReturnVoid)' has some invalid arguments

我调用服务的代码:

var client = new JsonServiceClient("http://host:8080/");
HelloResponse response = client.Get(new Hello { Name = "World!" });

有人可以帮忙吗? 谢谢。

【问题讨论】:

    标签: compiler-errors servicestack


    【解决方案1】:
    HelloResponse response = client.Get<string>(new Hello { Name = "World!" });
    

    您必须在这些泛型方法中指定返回类型。

    【讨论】:

    • 好的,我试过了,它奏效了:HelloResponse response = client.Get&lt;HelloResponse&gt;("/hello/World!"); 但后来我尝试了这个:HelloResponse response = client.Get&lt;HelloResponse&gt;(new Hello{Name = "John"});,我得到了这个错误:Argument 1: cannot convert from 'ServiceStackTest.Hello' to 'ServiceStack.ServiceHost.IReturn&lt;ServiceStackTest.HelloResponse&gt;' 他们到底是如何在这里管理它的:link
    • 您的路线是否指定了任何变量?你能告诉我你的路线吗?
    • 是的:Routes .Add("/hello") .Add("/hello/{Name}");
    • 好的,我想通了。我忘了为 Hello 类添加继承: public class Hello : IReturn
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-13
    相关资源
    最近更新 更多