如何将值赋给类中的数组类变量

时间:2015-07-25 06:35:55

标签: c# arrays

public partial class OrderWS
{
    private FulfillmentWS[] fulfillmentListField;
}

public partial class FulfillmentWS
{
    private Customer fulfillingCustomerField;

    private string fulfillingOutletIdField;
}

以上两个类有两个不同的.cs文件。我正在为OrderWs类创建对象,并尝试将值赋给另一个数组类中的fulfillingOutletIdField。

需要一些逻辑来为在FulfillmentWS类中的fulfillingOutletIdField变量赋值。

5 个答案:

答案 0 :(得分:1)

将FulfillmentWS中的私有字段更改为公共属性。

public partial class OrderWS
{
    private FulfillmentWS[] fulfillmentListField;
}

public partial class FulfillmentWS
{
    public Customer fulfillingCustomerField { get; set; };

    public string fulfillingOutletIdField { get; set; };
}

答案 1 :(得分:0)

您知道Properties吗?

public partial class FulfillmentWS 
{
    private Customer fulfillingCustomerField;
    public Customer FulFillingCustomer
    {
        get { return fulfillingCustomerField; }
        set { fulfillingCustomerField = value; }
    }

    private string fulfillingOutletIdField;
    public string FulFillingOutletId
    {
        get { return fulfillingOutletIdField; }
        set { fulfillingOutletIdField = value; }
    }
}

使用public属性与您的private字段进行互动。

<强>更新 使用构造函数初始化数组:

public partial class OrderWS
{
   private FulfillmentWS[] fulfillmentListField;
   public OrderWS(int length)
   {
       fulfillmentListField = new FulfillmentWS[length];
   }
}

然后

OrderWS WPObj = new OrderWS(2); // Array length must be >= 2 if you want to access index 1.
WPObj.fulfillmentList[1] = new FulfillmentWS();     
WPObj.fulfillmentList[1].fulfillingOutletId = "1234";

答案 2 :(得分:0)

当您将fulfillingoutletIdField和其他类定义为私有时,由于保护级别无法访问它,您可以使用protected或public(请参阅下面的链接了解变量范围的访问修饰符)。

只需改变那个东西,就可以像上面建议的那样在任何地方使用它。

public partial class FulfillmentWS
{
    public Customer fulfillingCustomerField { };

    public string fulfillingOutletIdField { };
}

Access Modifiers (C# Programming Guide)

https://msdn.microsoft.com/en-us/library/ms973875.aspx

http://www.c-sharpcorner.com/UploadFile/84c85b/default-scope-of-a-C-Sharp-class/

答案 3 :(得分:0)

您可以创建一个功能:

public partial class OrderWS
{
     private FulfillmentWS[] fulfillmentListField;
     public void function()
     {
         ...
     }
}

或者您可以使用访问器设置:

public partial class OrderWS
{
     private FulfillmentWS[] fulfillmentListField;
     public FulfillmentWS[] _fulfillmentListField
     {
         get{return fulfillmentListField;}
         set{fulfillmentListField = value;}
     }
}

答案 4 :(得分:0)

  

这是我为变量赋值的方式   OrderWS WPObj = new OrderWS(); WPObj.fulfillmentList [1] = new FulfillmentWS(); WPObj.fulfillmentList [1] .fulfillingOutletId =“1234”;

     

我在第二行有一个错误,说对象引用没有设置为对象的实例

您必须先创建新的Arrayo实例。

WPObj.fulfillmentList = new FulfillmentWS[1];