当前位置: 代码迷 >> Web Service >> web service HelloWorldRequest 有关问题
  详细解决方案

web service HelloWorldRequest 有关问题

热度:300   发布时间:2016-05-02 02:46:48.0
web service HelloWorldRequest 问题
我在本机中有个http://localhost/Service1.asmx服务,其中代码如下
C# code
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Linq;

namespace WebService1
{
    /// <summary>
    /// Service1 的摘要说明
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ToolboxItem(false)]
    // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
    // [System.Web.Script.Services.ScriptService]
    public class Service1 : System.Web.Services.WebService
    {

        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }
    }
}



我在另外一个网站添加服务引用,命名为name1.
随后我在cs文件中输入name1,提示却变成了
HelloWorldRequest
HelloWorldRequestBody
HelloWorldResponse
HelloWorldResponseBody

WebServiceSoap
WebServiceSoapChannel
WebServiceSoapClient


而我引用别人的web service时,却不会有这几个:
HelloWorldRequest
HelloWorldRequestBody
HelloWorldResponse
HelloWorldResponseBody
只有:
WebServiceSoap
WebServiceSoapChannel
WebServiceSoapClient

,不知道是如何设置的。

经过我的测试发现如果把
        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }
改成:
        [WebMethod]
        public bool HelloWorld()
        {
            return true;
        }
也就是改个类型就没有上面的情况了,不知道什么原因
------最佳解决方案--------------------
我在本机中有个http://localhost/Service1.asmx服务,其中代码如下
C# code
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Linq;

namespace WebService1
{
  /// <summary>
  /// Service1 的摘要说明
  /// </summary>
  [WebService(Namespace = "http://tempuri.org/")]
  [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
  [ToolboxItem(false)]
  // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
  // [System.Web.Script.Services.ScriptService]
  public class Service1 : System.Web.Services.WebService
  相关解决方案