Вызваны ли когда-либо пространства имен WCF? - PullRequest
0 голосов
/ 13 мая 2011

Я заметил, что пространства имен WCF обычно являются URL-адресами, но если вы пытаетесь получить к ним доступ в браузере, они обычно возвращают 404.

1) Эти пространства имен действительно когда-либо назывались?

2) Если нет, то почему они URL?

3) Должны ли они быть URL или какой-либо строкой?

Пример того, что я видел:

[ServiceContract(
    Name="ServcieAContract", 
    Namespace = "http://www.thatindigogirl.com/samples/2006/06")]
public interface IServiceA

Ответы [ 3 ]

2 голосов
/ 13 мая 2011

Использование URI для имен пространств имен WCF - это соглашение, которое в целом выросло вокруг пространств имен XML.

Имя пространства имен может быть любой строкой, но мотивом использования URI вместо этого является то, что более вероятно (если выбран разумно) быть глобально уникальным - часть имени хоста связывает пространство имен с конкретной организацией и этой организацией должен иметь стандарт для создания уникальных имен пространства имен в своем домене.

В некоторых случаях выбранный URI на самом деле является URL-адресом: то есть ресурс можно получить по этому адресу - обычно документация, копия схемы или тому подобное. Вы можете подумать об этом, если пространство имен относится к какому-либо общедоступному интерфейсу, и вы хотите, чтобы ваши клиенты могли легко найти справку / документацию по его использованию.

2 голосов
/ 13 мая 2011

Пространства имен - это просто имя * пробелы *. Они не являются URL-адресами.

Сказав, что иногда схемы доступны в URL.

они могут быть просто нормальными строками? Абсолютно. Хотя в этом случае вы обычно добавляете к ним префикс urn:.


Как прокомментировал Крис, для спецификации URN см. Ietf.org/rfc/rfc2141.txt

1 голос
/ 13 мая 2011

1) Они не должны вызываться (хотя они могут быть, возможно, для показа документации), но используются для идентификации и управления версиями сервисов и операций.

http://msdn.microsoft.com/en-us/library/ms733832.aspx

2) Проверьте ответ Криса Диксона

3) Подойдет любая строка, но люди в основном придерживаются формата меток с версией пространства имен с отметкой даты

http://www.ibm.com/developerworks/xml/library/x-tipnamsp/index.html

...