使用 ildasm 检测 WPF 程序集之间的标记差异

Posted

技术标签:

【中文标题】使用 ildasm 检测 WPF 程序集之间的标记差异【英文标题】:Using ildasm to detect markup differences between WPF assemblies 【发布时间】:2016-06-04 21:41:33 【问题描述】:

我使用 ildasm 来确定已构建程序集之间的更改/差异。这很好用,但是当我尝试让它检测 Xaml 中的更改(WPF 项目)时,我找不到任何差异 - 在对项目标记进行更改之后。

有什么想法吗?我用错了吗?

【问题讨论】:

【参考方案1】:

是的,XAML 文件未编译为 IL,IL 保持不变。这就是为什么您没有注意到任何差异的原因。

XAML 文件被编译为 BAML(二进制应用程序标记语言)并作为嵌入资源存储在程序集本身中。要比较 BAML,您需要使用BAML Reader。

More on BAML

【讨论】:

以上是关于使用 ildasm 检测 WPF 程序集之间的标记差异的主要内容,如果未能解决你的问题,请参考以下文章

Ildasm Ctrl + M(元数据)

商品检测数据集训练目标检测数据集与标记

用ildasm/ilasm修改IL代码

在应用程序之间共享设置

WPF XAML - 将数据网格列绑定到外键(数据集)

如何使用 C# 判断一个文件是否为程序集