0

我有一个 WCF 服务来返回客户数据。通过添加对象的新实例来创建数组列表。代码如下所示:

objCust.CUSTNUM  = CustomerByNumber_CST#9A
objCust.CUSTNAME = CustomerByNumber_NAME9A
objCust.CUSTADR1 = CustomerByNumber_ADR19A
objCust.CUSTADR2 = CustomerByNumber_ADR29A
objCust.CUSTCITY = CustomerByNumber_CITY9A
objCust.CUSTSTAT = CustomerByNumber_STAT9A
objCust.CUSTZIP  = CustomerByNumber_ZIPC9A
objCust.CUSTPHON = CustomerByNumber_PHON9A

aryList.Add(objCust)

然后我将数组列表作为数组返回 - aryList.ToArray(...

当我调用该服务时,数组元素按字母顺序返回 - 这是输出:

<b:CUSTADR1>3910 LAKEFIELD DR</b:CUSTADR1>
<b:CUSTADR2>JOHNS CREEK FACILITY</b:CUSTADR2>
<b:CUSTCITY>SUWANEE</b:CUSTCITY>
<b:CUSTNAME>JOHNSON CONTROLS</b:CUSTNAME>
<b:CUSTNUM>1688</b:CUSTNUM>
<b:CUSTPHON>770-495-9950</b:CUSTPHON>
<b:CUSTSTAT>GA</b:CUSTSTAT>
<b:CUSTZIP>30024</b:CUSTZIP>

我没有做任何排序。为什么这样排序?我希望它按照我添加它们的顺序。

4

1 回答 1

0

WCF 数据协定序列化程序对对象DataMemberAttribute属性进行排序,除非您在声明中提供特定的顺序数值。它与数组无关,即使您返回单个对象也会发生。

于 2012-07-18T14:55:59.880 回答