2015-09-14 66 views
0

我有一个使用帐户控制器来管理用户和资源的MVC 5 WebApi项目。它工作正常。
现在我需要添加相同的客户端功能,即与外部应用程序(iOS,Android,Windows Phone)。对于这个漏洞,我想使用WebApi。将WebApi添加到我的项目中的最佳做法是什么?我需要使用AccountUser授权,创建和登录新用户。我:Web Api集成

  1. 整合的WebAPI到现有项目
  2. 创建一个新的WebAPI项目和管理相同的分贝

什么是最好的做法?

感谢

+0

在这种情况下没有真正的最佳做法。只要你有一个两个项目正在使用的服务层,你就可以做到这一点。 – Luke

回答

0

我会建议将您的共享代码(entites的,命令和查询等),以不同的类库和的WebAPI独立的MVC。这两个项目都可以使用共享代码。

原因是MVC层可能会以包含HTML,CSS和JavaScript的视图进行响应,而(Web)API层可能只返回JSON或XML。我总是想到问题的分离。

0

没有银子弹;你可以做到这一点。您需要自行决定哪种方法可行,通过比较差异并选择最适合您要求的方案。

有一点需要记住的是,两个项目意味着两个应用程序在IIS中,一个是因为你有两个Global.asax初始化各自的应用程序。这可能会或可能不会带来好处。

+0

不完全正确,因为WebAPI是自主宿主 – Luke

+0

是的,在这种情况下,一个应用程序在IIS中,另一个在您自己的托管过程中......除非您无法将WebAPI托管为MVC站点的子站点(它们不能共享相同的基地址)。 – CodeCaster

+0

但是,如果只使用一个项目(webapi + mvc)我需要为认证/注册用户创建分离的类? –