【问题标题】:What are the pros and cons of having a WebAPI in the same or different project [closed]在相同或不同项目中使用 WebAPI 的优缺点是什么[关闭]
【发布时间】:2015-05-19 15:51:49
【问题描述】:

我有一个 MVC 应用程序,解决方案由三个项目组成,如下所述:

Store.Domain :保存域实体和逻辑(使用实体框架创建的存储库)。

Store.WebUI : 存放控制器和视图;充当应用程序的 UI。

Store.UnitTests :保存其他两个项目的单元测试。

我将在我的应用程序中使用 WebAPI 2,以便为一些 Android 应用程序创建 Web 服务。现在我不确定以下问题:

1) 牢记安全和维护问题,我应该为 WebAPI 创建一个单独的项目还是在 Store.WebUI 项目中使用 WebAPI?由于我还将安装 WebAPI 文档 nuget,它会在项目中创建多个文件夹和文件,我认为创建一个新项目可能会更好。

2) 假设要创建一个专门用于 WebAPI 的新项目,那么 WebAPI 项目的项目类型和选择是什么?屏幕截图中显示的以下选择是否属实?

项目类型:ASP.NET Web 应用程序
项目模板:只需选择 Web API

提前致谢。

【问题讨论】:

  • 询问“我应该做什么”或“什么更好”的问题非常基于意见,通常不利于帮助解决确凿的事实。我建议询问在同一个项目或不同项目中使用 webapi 的优缺点是什么
  • 好的,我更新了标题。有什么帮助吗?
  • 屏幕本身很容易解释...Select a templateAdd folders and core references for: 完全按照他们的建议去做。右侧的描述告诉您所选模板中的内容。可以使用带有 Web API 引用的 Empty 模板。
  • 我要不要用?我的意思不是创建一个新项目。如果我继续我目前的项目,屏幕怎么会告诉我正确的???能否请您重新阅读问题?
  • 你实际上是在问“如果你是我并开发这个项目,你会选择其中哪一个?”这是一个意见问题,与网站主题无关。

标签: asp.net-mvc entity-framework web-services asp.net-web-api asp.net-web-api2


【解决方案1】:

WebApi 是来自 Microsoft 的替代面向服务的应用程序,就像 WCF 一样。但是 WCF 使用 SOAP 协议,而 WebAPI 使用 HTTP 协议进行通信。

因此,如果您使用 WEBAPI 为您的 MVC 应用程序提供服务,您将单独托管该 WEB API 服务并通过 MVC 应用程序使用其服务,

如果您希望它们(MVC 和 WebAPI)在同一个项目中使用,请遵循 this article 中的此规则。

希望对您有所帮助。

【讨论】:

  • 感谢您的回复。其实我今天看了同一篇文章,但没有给出明确的答案。那么,我从您的回答中了解到您建议为 WebAPI 创建一个新的单独项目?真的吗?如果是这样,项目类型应该是 ASP.NET Web 应用程序,项目模板应该是 Web API
  • 项目模板是的
  • 我在上一条评论中问了 2 个问题。我不确定你回答的是哪一个。另一方面,除了WebUI项目之外,我还会将WebAPI项目设置为Setup project吗?你能回答所有三个问题吗?
  • 2/ 是,项目类型为 ASP.NET Web 应用程序,项目模板为 Web API。
  • 右键单击您的解决方案,选择属性,然后启动项目。选择“multiple startup project”然后选择你的mvc和webapi项目
猜你喜欢
  • 2016-02-08
  • 1970-01-01
  • 2011-04-01
  • 2010-09-12
  • 2011-12-28
  • 2011-12-14
  • 2018-11-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多