Perfect, also have a look at this variation as mentioned on:
myLKDict | Dictionary(Of String, String) =
(From jt In myJOBject.SelectTokens("..[?(@.identifier == 'ElementUpload')].values")
From pr In jt.Value(Of JObject).Properties()
Where pr.Name.toUpper().StartsWith("DOCUMENT-")
Select r=pr).ToDictionary(Function (x) x.Name, Function (x) x.Value.Value(Of String))
So we avoid doing the same retrieval job twice (result check and result retrieval)
And also the negative / empty result test:
for sure we can also go for variations

