我的问题是我需要更新一个基于WebReference的实体,其中包含大约40个字段。事实证明,如果我错过了一个字段,并且不包含现有数据,系统将删除那里的内容。我无法更新单个字段,我必须更新所有字段。
我使用的VB.NET对我来说也是新手 - 我承认,我是一名拥有大量MS Access经验的VBA编码器。
我正在为WSDL工作的代码示例(实际上只有一个)表明我必须按名称逐行手动枚举每个字段,用来自该实体的任何数据填充该实体的本地版本。远程实体,然后更改我关心的字段,然后重新发布回原始实体。
我习惯于能够通过索引值枚举记录集中的所有字段,并且能够通过名称更新整个记录集,只需从索引值中获取名称(即recordset.fields(10).name
)即可。所以我永远不必担心名称更改或其他字段,而且我的代码更清晰。
但是,尽管我想做的一切,我似乎无法让VB访问任何实体的信息,除非显式名称。例如,product.referencetitle
有效但product.fields[10].name
只是出错。
我甚至无法接受变量,例如product(varname)
。
不是这个基本编码吗?如果我可以动态访问它们,为什么我会硬编码字段名?我的代码会在下次更新WebReference时中断,我有新的或删除的字段名可以使用,对吗?