0

嗨,当我调用我的网络服务时,它返回给我:

    <?xml version="1.0" encoding="UTF-8"?>
    -<ArrayOfAnyType xmlns="http://localhost:5669/TAWebService.asmx" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <anyType xsi:nil="true"/> 
<anyType xsi:nil="true"/> 
<anyType xsi:nil="true"/> 
<anyType xsi:nil="true"/>
 <anyType xsi:nil="true"/> 
<anyType xsi:nil="true"/> 
<anyType xsi:nil="true"/>
 <anyType xsi:nil="true"/>
 <anyType xsi:nil="true"/>
 <anyType xsi:nil="true"/>
 </ArrayOfAnyType>

知道有什么问题吗?当我从我的 winapp 调用它时它返回 null !但是在我开发了网络服务的网站上它工作正常并返回了我的对象!

这是我用来检索对象的 linqtosql 查询:

[WebMethod]
public Object[] getPersonnel(string hashCode)
{
    Personnel personnel = new Personnel();
    Object[] objReturn = new Object[10];
    try
    {
        db = new TimeAttendanceDataBaseDataContext();
        personnel = db.Personnels.FirstOrDefault(x => x.HashRecord == hashCode.Substring(0,10));
        objReturn[0] = personnel.ID;
        objReturn[1] = personnel.UserName;
        objReturn[2] = personnel.Password;
        objReturn[3] = personnel.FirstName;
        objReturn[4] = personnel.LastName;
        objReturn[5] = personnel.Mobile;
        objReturn[6] = personnel.Email;
        objReturn[7] = personnel.HashRecord;
        objReturn[8] = personnel.AccessLevel;
        objReturn[9] = personnel.PersonnelCode;
    }
    catch
    {
        objReturn[0] = null;
        objReturn[1] = null;
        objReturn[2] = null;
        objReturn[3] = null;
        objReturn[4] = null;
        objReturn[5] = null;
        objReturn[6] = null;
        objReturn[7] = null;
        objReturn[8] = null;
        objReturn[9] = null;

    }
    return objReturn;
}
4

2 回答 2

2

块内发生异常try。在那里设置断点并调试代码以查看问题所在。

也许hashcode是 null 或长度小于 10?还是db.Personnels.FirstOrDefault(...)回来了null

作为旁注,如果您实现一些日志记录逻辑会很好,这样您就可以在实时环境中更轻松地进行故障排除。Log4net是一个不错的选择

于 2012-08-30T12:27:36.447 回答
0

我得到了答案,问题是我必须在 iis 中将我的 apppool 更改为本地系统,并且我可以通过我的其他应用程序登录到 web 服务

于 2012-08-30T12:34:30.100 回答