Что среда выполнения делает с пространствами имен XAML? - PullRequest
1 голос
/ 07 августа 2009

В каждом документе XAML есть одно или несколько объявлений пространства имен. то есть:

<Window x:Class="WindowsApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1 Height="300">

Объявления представлены в форме URL-адреса, что заставляет меня спросить: действительно ли среда выполнения получает информацию из этих URL-адресов при загрузке приложения? Что произойдет, если нет подключения к Интернету?

Ответы [ 2 ]

2 голосов
/ 07 августа 2009

Нет. Среда выполнения не разыменовывает URI, они просто используются в качестве читаемых глобально уникальных идентификаторов. Тот факт, что они вообще используют протокол http - это просто соглашение. Они соответствуют стандарту XML Namespace от W3C.

URI ссылаются на URI, определенные с использованием определений XmlnsDefinitionAttribute в сборках WPF. Средство чтения XAML использует эти атрибуты для группировки пространств имен CLR из этих сборок в объединенное пространство имен XML.

2 голосов
/ 07 августа 2009

Это просто стандартное пространство имен xml, которое не имеет ничего общего с XAML. Это действительно просто уникальный идентификатор для этого конкретного XML; данные не извлекаются из этого URL, и фактически это даже не должен быть URL.

См. этот предыдущий пост для объяснения того, что такое пространство имен в xml, и почему фактический текст самого пространства имен не имеет реального значения.

...