使用URL重定向而不是输入参数为WCF服务

时间:2011-07-21 12:38:41

标签: wcf url-rewriting dynamics-crm

在调查Dynamics CRM中的Organization.svc时,我发现它使用URL重定向来更改组织。这意味着每个组织都会模拟访问Organization.svc的URL。

只有一个SVC文件,但有多个URL可以访问它,例如组织Org1将具有网址http://CRMserver_name/Org1/XRMServices/2011/Organization.svc,而Org2将具有http://CRMserver_name/Org2/XRMServices/2011/Organization.svc

我想知道与将输入参数传递给SVC相比,这样做是否有任何好处。请分享您对这两件事的利弊的看法。

2 个答案:

答案 0 :(得分:1)

我今天学到了新东西。如果你已经知道了,请原谅我。

有两件不同的事情 -

  1. 网址路由 - http://msdn.microsoft.com/en-us/library/ee358760.aspx
  2. 网址重写 - http://msdn.microsoft.com/en-us/library/ms972974.aspx
  3. URL路由是终极的事情。它完全是虚拟的,无需在IIS中注册路由。所以现在我知道为什么Dynamics CRM正在使用它。使用路由客户端不需要为WCF服务的每个方法调用指定组织名称。在创建客户端对象时,URL本身会提供该信息。客户端只需要执行一次,所有方法现在都知道特定WCF调用的组织名称。

    此示例可帮助您开始使用WCF的URL路由 - http://msdn.microsoft.com/en-us/library/ee662952.aspx

    希望这有助于某人! -Nilesh

答案 1 :(得分:0)

我的猜测是更清晰的URL,也遵循Dynamics CRM的一些约定。据我所知,网址格式一直是http://CRMserver_name/OrgName/...