【问题标题】:parameters in service route服务路由中的参数
【发布时间】:2011-01-25 12:30:05
【问题描述】:

在 WCF webhttp 项目上工作,对路由组合中的参数有疑问。

我有两个服务 - 项目服务(允许用户添加和查看项目)和一个项目服务,允许用户查看项目内的项目。一个项目中可以有多个项目。

我想要格式为

的网址

localhost//projects//addproject

localhost//projects//{projectid}//item//additem

localhost//projects//{projectid}//item//getitem//{itemid}

我有两个服务 ItemService 和 ProjectService。 Itemservice 有方法 additem 和 getitem Projectservice 有方法 addproject

如何在我的全球路由中声明这些服务?我试过了

RouteTable.Routes.Add(new ServiceRoute("projects/{projectid}/item", new WebServiceHostFactory(), typeof(ItemService))); 这给了我一个错误

我可以将所有代码添加到 ProjectService,但为了代码的可维护性,我希望同时拥有 ProjectService 和 ItemService

【问题讨论】:

    标签: wcf asp.net-mvc-2 asp.net-mvc-routing webhttpbinding wcf-routing


    【解决方案1】:

    只是一个建议:

    • 您可以创建一个名为“ProjectController”的控制器。
    • 向它添加方法,这将调用您的服务,例如:

      • 一个。添加项目()
      • 乙。 AddItem(int projectID)
      • c。 GetItem(int projectID, int ItemID)

    您几乎可以按照您想要的方式调用它们:

    本地主机//项目//添加项目

    localhost//project//AddItem//{projectid}

    localhost//project//GetItem//{projectid}//{itemid}

    【讨论】:

      猜你喜欢
      • 2018-02-19
      • 2018-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-18
      • 2017-01-22
      • 1970-01-01
      • 2015-08-14
      相关资源
      最近更新 更多