首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >webservices中的数组-对象引用没有设置为对象的实例。

webservices中的数组-对象引用没有设置为对象的实例。
EN

Stack Overflow用户
提问于 2012-03-27 03:30:18
回答 1查看 334关注 0票数 2

我正在发送包含数组的soap消息。我的代码中的数组有问题。它给出了上面的错误,我到处查看,甚至一遍又一遍地写和重写我的代码,但是我似乎找不到出错的地方。

如果有人能给我指明正确的方向,我会非常感激的:

代码语言:javascript
复制
UpdateRatePackages.IService.InventoryServiceClient isc = new UpdateRatePackages.IService.InventoryServiceClient();
    UpdateRatePackages.IService.UpdateRatePackagesRequest ureq = new UpdateRatePackages.IService.UpdateRatePackagesRequest();
    UpdateRatePackages.IService.UpdateRatePackagesOperationResponse ores = new UpdateRatePackages.IService.UpdateRatePackagesOperationResponse();

受保护的void Page_Load(对象发送方,EventArgs e) { SendSoapMessage();}

受保护的空SendSoapMessage() {

代码语言:javascript
复制
        Int64 HID = 717759;
        Int64 HRID = 85264;
        int avail = 6;
       // RateDetails.AvailabilityApplicationType val  = RateDetails.AvailabilityApplicationType.SET;
       for (int i = 0; i < ureq.RatePackages.GetLength(0); i++)
        {
            ureq.RatePackages[i].RatePackageId = HRID;
            for (int j = 0; j < ureq.RatePackages[j].Rates.GetLength(0); j++)
            {
                ureq.RatePackages[i].Rates[j].Availability = avail;
                ureq.RatePackages[i].Rates[j].AvailabilityApplicationType = UpdateRatePackages.IService.AvailabilityApplicationType.SET;
                ureq.RatePackages[i].Rates[j].FromDate = Convert.ToDateTime("2012-03-21");
                ureq.RatePackages[i].Rates[j].ToDate = Convert.ToDateTime("2012-03-31");
            }

           // isc.UpdateRatePackages(request);

        }

在webservice中定义的数据:

代码语言:javascript
复制
     public class UpdateRatePackagesRequest
    {
        public string Username;
        public string Password;
        public UpdateRatePackageRequest[] RatePackages;


    }

    public class UpdateRatePackageRequest
    {
        public Int64 RatePackageId;
        public RateDetails[] Rates;

    }


    public class RateDetails
    {
        public decimal Rate;
        public enum RateApplicationType { SET, INCREASE, DECREASE, INCREASE_PERCENT, DECREASE_PERCENT } ;
        public int Availability;
        public enum AvailabilityApplicationType { SET , INCREASE, DECREASE };
        public bool StopSell;
        public string Inclusions;
        public int MinimumNightStay;
        public DateTime FromDate;
        public DateTime ToDate;

    }



    public class UpdateRatePackageResult
    {
        public Int64 RatePackageId;
        public Boolean Success;
        public string Message;

    }

    public class UpdateRatePackagesResponse

    {
        public UpdateRatePackageResult[] Result;

    }

我在数组中的问题是与soap消息本身有关吗?

突出显示错误的行:

for (int = 0;i< ureq.RatePackages.GetLength(0);i++)

请帮帮我!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-27 04:21:31

代码语言:javascript
复制
for (int i = 0; i < ureq.RatePackages.GetLength(0); i++)

如果错误发生在那里,那么ureqRatePackages都是null。进入调试器,看看哪个是null。看起来您确实在设置ureq,但无论如何您应该检查这两个选项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9883024

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档