如何在 UWP 中为运行时指令 (Default.rd) 定义 Dictionary<Guid,List<Exception>>?
How to define Dictionary<Guid,List<Exception>> for Runtime Directives (Default.rd) in UWP?
到目前为止,我的 UWP 应用程序中的 Defualt.rd 文件一直存在一些问题。我需要将 Dictinary> 定义到文件,但无论我尝试什么,我都失败了。我尝试过的事情:
<TypeInstantiation Name="Dictionary" Serialize="Required All" Arguments="System.Guid, System.Collections.Generic.List[System.Exception]" Dynamic="Required All" DataContractJsonSerializer="Required All" DataContractSerializer="Required All" />
<TypeInstantiation Name="Dictionary" Serialize="Required All" Arguments="System.Guid, System.Collections.Generic.List`1[System.Exception]" Dynamic="Required All" DataContractJsonSerializer="Required All" DataContractSerializer="Required All"
这是 SessionStateService 在挂起时抛出的异常消息:
SerializationCodeIsMissingForType,System.Collections.Generic.Dictionary2[System.Guid,System.Collections.Generic.List
1[System.Exception]]
我阅读了 MSDN 页面 (here) 中的运行时指令,但一点也不懂,它太复杂了。我可以定义一个节点泛型类型,如 List 或 Dictinary,但无法弄清楚 Dictionary>.
rd.xml 文件中的通用参数是用花括号指定的,而不是尖括号。
例如:System.Collections.Generic.Dictionary<System.Object,System.String>
变成 System.Collections.Generic.Dictionary{System.Object,System.String}
.
您可能还会发现这些有帮助:
到目前为止,我的 UWP 应用程序中的 Defualt.rd 文件一直存在一些问题。我需要将 Dictinary> 定义到文件,但无论我尝试什么,我都失败了。我尝试过的事情:
<TypeInstantiation Name="Dictionary" Serialize="Required All" Arguments="System.Guid, System.Collections.Generic.List[System.Exception]" Dynamic="Required All" DataContractJsonSerializer="Required All" DataContractSerializer="Required All" />
<TypeInstantiation Name="Dictionary" Serialize="Required All" Arguments="System.Guid, System.Collections.Generic.List`1[System.Exception]" Dynamic="Required All" DataContractJsonSerializer="Required All" DataContractSerializer="Required All"
这是 SessionStateService 在挂起时抛出的异常消息:
SerializationCodeIsMissingForType,System.Collections.Generic.Dictionary2[System.Guid,System.Collections.Generic.List
1[System.Exception]]
我阅读了 MSDN 页面 (here) 中的运行时指令,但一点也不懂,它太复杂了。我可以定义一个节点泛型类型,如 List 或 Dictinary,但无法弄清楚 Dictionary>.
rd.xml 文件中的通用参数是用花括号指定的,而不是尖括号。
例如:System.Collections.Generic.Dictionary<System.Object,System.String>
变成 System.Collections.Generic.Dictionary{System.Object,System.String}
.
您可能还会发现这些有帮助: