如何在WCF端点中返回消息?

时间:2018-12-16 14:10:28

标签: .net wcf

我有一个终点:

[ServiceContract]
public interface ICheck
{
        [OperationContract]
        [WebInvoke(Method = "GET", UriTemplate = "check")]
        Task GetCheckAsync();
 }

我不知道如何在对此端点的响应中返回string。我尝试返回Task对象,但无法实例化。

问题:如何将包含消息的对象返回给请求者(前端)?

2 个答案:

答案 0 :(得分:1)

尝试这样

1)如果要返回对象

 [ServiceContract]
 public interface ICheck
 {
    [OperationContract]
    [WebInvoke(Method = "GET", UriTemplate = "check")]
    Task<objectname> GetCheckAsync();
 }

并在定义时

public class HelloService : ICheck
{
    public async Task<objectname> GetCheckAsync()
    {
       // do your operation and return the object
    }
}

2)如果要返回字符串

 [ServiceContract]
 public interface ICheck
 {
    [OperationContract]
    [WebInvoke(Method = "GET", UriTemplate = "check")]
    Task<string> GetCheckAsync();
 }

并在定义时

public class HelloService : ICheck
{
    public async Task<string> GetCheckAsync()
    {
       // do your operation and return the string
    }
}

有关更多信息,您可以检查以下链接

Example

答案 1 :(得分:0)

似乎您想从前端的服务器端获取字符串/ json结果。 您可以使用webhttpbinding发布WCF服务,并使用ajax方法调用该服务。
此外,我们应确保操作方法返回所需的正确类型。您可以参考以下链接。
How can I use a WCF Service?
如果要返回强类型对象,则可以使用DataContract。
https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/using-data-contracts
随时让我知道是否有什么可以帮助您的。