有没有办法引用(在XAML中)名称中带有空格的程序集?

时间:2011-03-16 18:47:17

标签: xaml

是否无法引用名称中包含空格的程序集?我是否真的必须将程序集重命名为不包含空格?难道没有办法逃离这些空间吗?我找不到很多有这个问题的人,更不用说任何解决方案......

示例XAML:

<UserControl x:Class="SomeClass"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:Some.Namespace;assembly=Some Assembly With Spaces In The Name"
    >

这是编译器在您尝试执行此操作时提供的错误:

  

未知的构建错误,''clr-namespace:Some.Namespace; assembly =某些具有空格的程序集在名称中'映射URI无效。第4行位置2.'

放'或&amp; quot;在程序集名称周围没有帮助。

2 个答案:

答案 0 :(得分:4)

This solution似乎已经解决了我在程序集名称中使用空格的问题。

答案 1 :(得分:1)

This看起来像你所指的错误,这是“固定的”...

我在单独的程序集中遇到了与ValueConverter类似的问题,并且构建它的方法是在我的ValueConverter类中包含一个默认构造函数。如果没有它,如果它包含在名称中带有空格的程序集中,VS将不会构建它。

不幸的是,当我实际运行它时,它会构建,但会以XamlParseException结束。

如果我这样做引用没有空格的程序集,一切都很好。

顺便说一句,你是定义xmlns:local命名空间但引用不同的程序集 - 如果你的命名空间确实是本地的,你可以这样做:

<xmlns:local="clr-namespace:Some.Namespace"/>