Share via


Item Property

Gets or sets weakly-typed property storage for the current instance.

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 PromoCodeRecord
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
Weakly-typed properties for the current instance.

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.

The keyName is trimmed before setting or getting the value.

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

PromoCodeRecord Class

PromoCodeRecord Members

Microsoft.CommerceServer.Runtime.Orders Namespace