Skip to main content
January 20, 2023
Solved

Dictonary variable

  • January 20, 2023
  • 1 reply
  • 0 views

I want to update the parameter of my dictonary . How can i achieve it? .add adds the value in the dictonary. Is there any update function to update the value of that key in dictonary

Dim params2 As New Dictionary(Of String, String)
params2.Add("Entity_param_db","E001" )

For Each MemberOfList As MemberInfo In Nonstreamproduct
             params2.Add("Entity_param_db",MemberOfList.Member.Name)
             BRApi.Utilities.StartDataMgmtSequence(si,dataMgmtSeq2, params2)
Next

Best answer by JackLacava

Two ways:

' Explicit
myDict.Item("myKey") = newValue
' Shortcut
myDict("myKey") = newValue

For more help, have a look at the official documentation from Microsoft.

1 reply

January 20, 2023

Two ways:

' Explicit
myDict.Item("myKey") = newValue
' Shortcut
myDict("myKey") = newValue

For more help, have a look at the official documentation from Microsoft.

OS_PizzaAuthor
January 23, 2023

Thanks for this. I eneded up using removing the key value before iterating next loop and then adding it back.

 

January 27, 2023

Hi, to handle duplicated or non-existing keys, I would suggest you to use a couple of nifty extended dictionary methods available in OneStream: XFGetValue and XFSetValue.

Dim params As New Dictionary(Of String, String)
params.XFSetValue("sameKey", "A")
params.XFSetValue("sameKey", "AB")
Dim sValue As String = params.XFGetValue("noKey", "defaultValue")