Item Property

Gets or sets weakly-typed property storage for the current line item. In C#, this property is the indexer for the LineItem class.

Namespace:  Microsoft.CommerceServer.Runtime.Orders
Assembly:  Microsoft.CommerceServer.Runtime (in Microsoft.CommerceServer.Runtime.dll)

Syntax

'Declaration
Public Property Item ( _
    keyName As String _
) As Object
'Usage
Dim instance As LineItem
Dim keyName As String
Dim value As Object

value = instance.Item(keyName)

instance.Item(keyName) = value
public Object Item[
    string keyName
] { get; set; }
public:
property Object^ Item[String^ keyName] {
    Object^ get (String^ keyName);
    void set (String^ keyName, Object^ value);
}
JScript does not support indexed properties.

Parameters

Property Value

Type: System..::.Object
Stores the weakly-typed properties for the current line item.

Exceptions

Exception Condition
PropertyConflictException

keyName conflicts with a strongly-typed property name or the name of a Dictionary key that is mapped to a strongly-typed property through the Pipeline Adapter mapping file (OrderPipelineMappings.xml in the default Commerce Server installation).

ArgumentNullException

keyName is nullNothingnullptra null reference (Nothing in Visual Basic).

Remarks

Weakly-typed properties with the same name as strongly typed properties are not allowed.

To support legacy Commerce Server functionality, weakly-typed property names starting with "_" (underscore) will not be written to storage. Names without underscore prefixes that are not serializable will also not be stored.

keyName is trimmed of leading and trailing white space characters before being set.

Marshalling the indexer property is totally governed by the .NET/COM interoperability rules. If you place an object into an indexer property, you should review the .NET/COM interoperability rules to determine how the object will appear to COM-based code.

Permissions

See Also

Reference

LineItem Class

LineItem Members

Microsoft.CommerceServer.Runtime.Orders Namespace