<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://......dtd">

来源:互联网 发布:JAVA classpath 和path 编辑:程序博客网 时间:2024/05/21 06:31
返回信息总出现:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">




在WebService服务中,有时候因为特殊的需要,需要在服务中使用页面,比如.aspx页面。

在页面中,只有逻辑处理代码,如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="HealthCheck.aspx.cs" Inherits="WcfService.HealthCheck" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.EntityClient" %>


<%
    try
    { 
         String Str=........;
         ......
         Response.Write(Str); 
    }
    catch (Exception ex)
    {
        Response.Write(ex.Message);
    }
%>

逻辑代码的返回值,使用Response.Write()方法输出,直接显示在返回页面中。


而使用WebRequest 请求的代码:
WebRequest webRequest = HttpWebRequest.Create(@".....HealthCheck.aspx");
StreamReader responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream(), Encoding.UTF8);
string StrResult = responseReader.ReadToEnd();  //得到返回的结果 

如果Response.Write()输出的是"true",得到的返回结果是:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> true。
true在最后面,无法准确获取到。


出现此问题的原因很简单,在上面的页面逻辑代码中,

第二行的文本,<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

也作为结果被输出了。

把第二行删掉即可。
0 0
原创粉丝点击