我有一个 WCF 服务,它将从位于客户网络中的 HTML 表单中调用。
当同一个表单将完全相同的数据发布到 ASP 页面时,它期望得到如下响应:
Response.Write "SUCCESS" & vbnewline
如何从我的 WCF 服务发送相同的响应?
谢谢。
我有一个 WCF 服务,它将从位于客户网络中的 HTML 表单中调用。
当同一个表单将完全相同的数据发布到 ASP 页面时,它期望得到如下响应:
Response.Write "SUCCESS" & vbnewline
如何从我的 WCF 服务发送相同的响应?
谢谢。
实际上,WCF 服务可以返回任何类型的数据。这涵盖了基本的原始类型,例如int
or string
,但您也可以创建更高级的复合类型(类)并将它们发送回来。
但是:WCF 并非旨在返回 HTML 标记——这将是完全错误的处理方法。WCF 是一项服务 - 一项服务提供一些功能,您发送一些数据/参数,您获取一些数据/输出类型。
WCF 不应该也绝不能关心用户端数据的实际表示- 这是您的用户界面的工作 - ASP 页面或您正在处理的任何内容。
所以你可以有这样的 WCF 服务:
[ServiceContract]
interface IMyService
{
[OperationContract]
string SomeServiceMethod(string someInput);
}
然后从您的客户端代码中调用它,如下所示:
string result = MyService.SomeServiceMethod("Hello!");
但是您永远不应该编写返回 HTML 标记或任何其他系统特定信息的 WCF 服务。
而且由于 WCF 是一个基于消息的系统,WCF 服务与您的 ASP 页面完全没有联系——它不能参与 ASP 生命周期或访问“响应”对象或类似的东西。