我写了一个web服务,下面有两个WebMethod
1.AddUser(UserInfo usInfo)
2.AddUser1(string UserName,string Password)
然后我在一个Winform中引用了这个Web服务,取名为wsUser
            wsUser.UserInfo usInfo = new wsUser.UserInfo();
            usInfo.UserName = "1123";
            usInfo.Password = "123";
            wsUser.Service objUser= new wsTest.wsUser.Service();//Service 是asmx的文件名
            objUser.AddUser(usInfo);//返回False请问我要怎么单步调试?我是web服务新手,谢谢大家
另外请问一下可以实现重载的概念吗?如下:
objUser.AddUser("1123","123");
objUser.AddUser(usInfo);
谢谢大家

解决方案 »

  1.   

    可以直接运行,然后在IE来调用你的method,程序可以设置debug break点。
      

  2.   

    Knight94(愚翁) ( ) 信誉:110  2006-04-19 19:04:00  得分: 0  
     
     
       可以直接运行,然后在IE来调用你的method,程序可以设置debug break点。
      
     
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    正解
      

  3.   

    是这样的,我右击asmx文件选择在浏览器中查看可以看到相关的WEB Method,但是因为传入的参数都是自定义的,所以不能继续调试,另外web method方法调用的都是后台代码(保存的App_Code中的类),在serives.cs文件中只是对其进行简单的调用,每次我断点单步运行到调用web method的时候系统提示我如下内容:
    无法自动进入并单步执行服务器,不能调试远程过程.这通常说明没在服务器上启动调试,有关详细信息请参阅"帮助"
    这是我在winform 中执行单步调试到执行web method的时候弹出来的提示.
    请问要怎么解决?
      

  4.   

    to 这是我在winform 中执行单步调试到执行web method的时候弹出来的提示.
    请问要怎么解决?当然直接从winform程序中无法跟踪到web-service程序,你可以在web service服务端用vs打开你的程序并运行,然后在相应的方法中设置断点。那么当winform程序调用web method的时候,你的web service服务端的vs断点会得到相应,然后你进行调试即可。
      

  5.   

    我是在web服务里相应的method里打了断点,因为这个method是调用的另外一个对象,断点不到这个method引用的对象里去啊。
      

  6.   

    to 我是在web服务里相应的method里打了断点,因为这个method是调用的另外一个对象,断点不到这个method引用的对象里去啊。那就比较麻烦了,如果引用的类库是你写的,可以把它加载到webservice的工程中,设置断点是可以过去的;但是如果不是你写的,就只能通过写日至文件了。
      

  7.   

    引用的不是一个类库,也是这个项目里的几个类是这样的.
    在app_Code那个文件夹里另外存在几个文件,1.User.cs,2.UserInfo.cs
    User.cs里面函数也就是具体对用户进行操作的东东,如果Add,Delete,Update的函数吧
    UserInfo.cs是一个保存用户属性的类(属性包括姓名,性别之类的东西)
    可以这样定义User.Add函数:
    bool Add(UserInfo usInfo) ;
    然后再在Web Method--AddUser(UserInfo usInfo)中这样写:
    UserInfo usInfo = new UserInfo("姓名","男");
    User objUser =new User(usInfo);
    objUser.add();
    现在的问题是可以将断点执行到Web Method中的AddUser函数中,但是不能将断点执行到
    objUser.add()实际代码中,也就是User对象中去,请问要怎么调试?谢谢!
    注意:UserInfo,User类都是属性这个webservice工程的一部分,不是另外的类库.
      

  8.   

    to 注意:UserInfo,User类都是属性这个webservice工程的一部分,不是另外的类库.那你可以跟踪进去,是没问题。
      

  9.   

    TO Tom_Real:
    我在MSDN帮助上也看到是要附加进程,但要附加到哪条进程啊,我现在已经把远程调试器也打开了,还有WEB 服务在运行的时候也有一个TCP端口在侦听,请问要怎么操作?
      

  10.   

    在WEB METHOD里写两个ADDUSER,只是参数不同,好象不可以实现,可能是我是新手,要怎么实现?
      

  11.   

    to 在WEB METHOD里写两个ADDUSER,只是参数不同,好象不可以实现,可能是我是新手,要怎么实现?是可以的,但是你需要在前面标明,例如:
    [WebMethod(MessageName="AddDoubles")]
    public double Add(double dValueOne, double dValueTwo)
    {
         return dValueOne + dValueTwo;
    }[WebMethod(MessageName="AddIntegers")]
    public int Add(int iValueOne, int iValueTwo)
    {
          return iValueOne + iValueTwo;
    }
      

  12.   

    原来是没有将debug=true
    呵呵,谢谢两位的关心