I just spent way too much time figuring out that a tool parameter value such as:

gp.GetParameterInfo()[Index].Value

is not a string but an object with a string property:

gp.GetParameterInfo()[Index].Value.Value

This is contrary to the description in the document

http://webhelp.esri.com/arcgisdeskto...ocessor_93.pdf

where the general rule is that "All properties and method parameters are either a string or a long data type, unless otherwise stated", but in the Parameter section, it says:

■–■ Value

instead of

■–■ Value: Value

in purple with a link back to the Value section (if it is, in fact, the same class; currently that section is only linked from GetParameter(Index): Value )

I thought I should mention this issue here since I couldn't find any discussion of it, which suggests that most people are using another route to get this information such as GetParameter(Index).Value.Value, GetParameterAsText(Index), or just retyping Value with an assignment from a string. Unfortunately the default ToolValidator class sends one down the path of using GetParameterInfo(), hence my journey.

Hopefully this document will be corrected.

-- Andy