我有
CurrentAppSimulator.LicenseInformation.ProductLicenses["nonexistentEntry"]
(MSDN)
并且它不会抛出异常。
这是预期的吗?它会一直这样吗?
答案 0 :(得分:2)
正如评论员在上面发布的那样,虽然变量是IReadOnlyDictionary
,但不证明它是Dictionary
。它可能会以其他方式实现。
答案 1 :(得分:2)
正如我在评论中提到的那样:
LicenseInformation.ProductLicenses不是字典。根据documentataion,它是IReadOnlyDictionary。
我没有找到有关其行为或实现的信息,但如果在运行时检查它,您可以发现它是System .__ ComObject:System.MarshalByRefObject。这意味着它绝对不是字典。
最好在访问密钥之前检查密钥是否存在,因为将来不确定行为是否会发生变化。