Note
本文專指 .NET 框架。 此規定不適用於較新的 .NET 實作,包括 .NET 6 及更新版本。
marshaling當 CLR 為方法參數或結構欄位設置封送資訊時,管理除錯助理(MDA)會被啟動。 此 MDA 不適用於 JIT 編譯的組件。
對運行時間的影響
此 MDA 對 CLR 沒有影響。
Output
MDA 顯示參數或欄位在受管理與非受管理上下文中的型別,以及包含該型別的結構或方法。 以下為欄位的輸出範例:
Marshaling from 'Char' to 'ANSI char'
name="assembly!Namespace.Class::myChar
Configuration
MDA 配置允許你根據相關欄位或方法名稱過濾報告的編組資訊。 以下範例展示了如何使用 methodFilter、 fieldFilter和 match 元素來指定濾波器。 將屬性設 name 為星號(*)即可匹配所有屬性。
<mdaConfig>
<assistants>
<marshaling>
<methodFilter>
<match name="Method1"/>
<match name="Method2"/>
</methodFilter>
<fieldFilter>
<match name="Field1"/>
<match name="Field2"/>
</fieldFilter>
</marshaling>
</assistants>
</mdaConfig>