我在winform的程序里调用webservice的方法,偶尔会出现http 400 bad request的错误,并不是每次都出错。不知道是什么原因。
我在webservice的方法代码如下:
[WebMethod]
    public string InsertCompany(string UserNo, string UserPwd, byte[] bData)
    {
        LyDes des = new LyDes();
        DataTableFormatter df = new DataTableFormatter();
        if (ValidateUser(des.DesStr(UserNo), des.DesStr(UserPwd)) == 0)
        {
            return "验证身份失败,无法执行操作!";
        }
        try
        {
            DataTable tb = df.GetDataTable(bData);            DataTableReader dbr = new DataTableReader(tb);
            LY4SDB.W4SDataDataSetTableAdapters.Sys_CompanyTableAdapter taCom = new LY4SDB.W4SDataDataSetTableAdapters.Sys_CompanyTableAdapter();
            while (dbr.Read())
            {
                Guid CompanyID = Guid.NewGuid();
                string CompanyName = null;
                string Address = null;
                string Tel = null;
                string FMaster = null;
                string Mobile = null;
                Guid? UpWId = null;
                if (dbr["CompanyName"].ToString().Trim() != "")
                    CompanyName = dbr["CompanyName"].ToString();
                if (dbr["Address"].ToString().Trim() != "")
                    Address = dbr["Address"].ToString();
                if (dbr["Tel"].ToString().Trim() != "")
                    Tel = dbr["Tel"].ToString();
                if (dbr["FMaster"].ToString().Trim() != "")
                    FMaster = dbr["FMaster"].ToString();
                if (dbr["Mobile"].ToString().Trim() != "")
                    Mobile = dbr["Mobile"].ToString();
                if (dbr["CompanyID"].ToString().Trim() != "")
                    CompanyID = new Guid(dbr["CompanyID"].ToString());
                if (dbr["UpWId"].ToString().Trim() != "")
                    UpWId = new Guid(dbr["UpWId"].ToString());
                taCom.InsertCompany(CompanyName, Address, Tel, FMaster, CompanyID, UpWId, Mobile);
            }
            dbr.Close();
            dbr.Dispose();            return "1";
        }
        catch (Exception E)
        {
            return E.Message;
        }
    }