WCF服务返回Response.Write

ano*_*009 1 wcf response.write

我有一个WCF服务,将从位于客户网络中的HTML表单调用.

当相同的表单将完全相同的数据发布到ASP页面时,它期望响应如下:

Response.Write"SUCCESS"和vbnewline

如何从WCF服务发送相同的响应?

谢谢.

mar*_*c_s 5

WCF服务确实可以返回任何类型的数据.这涵盖了像int或的基本原始类型string,但您也可以创建更高级的复合类型(类)并将它们发回.

但是:WCF并不是为了返回HTML标记而设计的 - 这将是一种完全错误的方法.WCF是一种服务 - 一种服务提供一些功能,你发送一些数据/参数,你会得到一些数据/输出类型.

WCF不应该也不应该关注用户端数据的实际表示 - 这是您的用户界面的工作 - ASP页面或您正在处理的任何内容.

所以你可以有这样的WCF服务:

[ServiceContract]
interface IMyService
{
  [OperationContract]
  string SomeServiceMethod(string someInput);
}
Run Code Online (Sandbox Code Playgroud)

然后从您的客户端代码调用,如下所示:

string result = MyService.SomeServiceMethod("Hello!");
Run Code Online (Sandbox Code Playgroud)

但您不应该编写返回HTML标记或任何其他系统特定信息的WCF服务.

由于WCF是基于消息的系统,因此WCF服务与您的ASP页面完全没有连接 - 它不能参与ASP生命周期或访问"响应"对象或类似的东西.