XAML clr-namespace版本255.255.255.255的内容是什么?

时间:2017-05-25 17:46:33

标签: xaml xamarin.forms uwp-xaml

XAML clr-namespace版本255.255.255.255是特殊的还是任意值?

在尝试使用一些Xamarin.Forms Native View嵌入时,我在Xamarin文档上遇到了这个Consuming Native Views示例。在XAML中,它添加了一个Windows命名空间,如下所示:

<ContentPage
    ...
    xmlns:win="clr-namespace:Windows.UI.Xaml.Controls;assembly=Windows,
    Version=255.255.255.255, Culture=neutral, PublicKeyToken=null,
    ContentType=WindowsRuntime;targetPlatform=Windows"
    ...
>

该命名空间上的Version看起来有点像网络子网掩码,因此引起了我的注意。该特定版本是否具有某些特殊含义,或者只是填充它,因为它期望值存在?还有其他特殊价值可以进去吗?

1 个答案:

答案 0 :(得分:1)

ECMA 335标准定义了公共语言基础结构(CLI),其中用多种高级语言编写的应用程序可以在不同的系统环境中执行,而无需重写这些应用程序以考虑这些环境的独特特性

  

ECMA 335组件需要有版本号。但是Windows运行时类型解析算法并没有使用版本号,因此创建winmd格式的团队为程序集版本号选择了任意版本号255.255.255.255。

     

这有助于确保在进行类型解析时没有人尝试使用.Net类型解析算法(它不完美,不幸的是有些工具仍然使用.Net类型解析算法)。

有关详细信息,请参阅What does version 255.255.255.255 for winmd files indicate?