关于wcf中的mex端点

时间:2012-12-28 12:22:24

标签: wcf

这是一个mex端点示例

<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />

但是我看到有人写mex端点,比如

<endpoint address="net.tcp://localhost:1645/ChatServer/mex"
                      binding="mexTcpBinding"
                      contract="IMetadataExchange"/>

所以告诉我为什么以及何时应该像上面那样编写mex端点。 只是比较我的两个端点,看看第一个地址属性的区别 这个词叫做&#34; mex&#34;但第二个有网址。

所以我的问题是&#34;当人们必须提供一个网址来解决mex端点的属性时?&#34;。

另一个问题是&#34; mex地址网址是否应该在网址末尾有/ mex字?&#34;。 如果我给net.tcp://localhost:1645/ChatServer/ or net.tcp://localhost:1645/ChatServer这样的网址没有mex字,那么服务将无法被发现?

/ mex word的意义是什么?

1 个答案:

答案 0 :(得分:1)

第一个将通过http公开元数据,第二个将通过TCP公开。它用于支持平台, WCF用于支持多个平台。

您可以使用任何网址来公开元数据。没有必要遵循上述惯例。 mex只是更好的做法,使元数据与url + mex一样。

这是一个提供概述的网址

http://www.danrigsby.com/blog/index.php/2008/05/27/wcf-metadata/