我需要创建一个解决方案,我的安卓应用程序将在其中使用网络服务。也应该有一个网站。 因此,我正在考虑为所有业务逻辑(包括Web服务中的用户身份验证(创建MVC Web API,然后从MVC Web App使用它们。 (1(. 这是一个好的设计吗? (2(. 我是网络服务的新手。我认为只有有限的函数,如 GET、PUT、POST,如何为我的业务逻辑创建许多其他函数。 (3(. 我有这个设计的例子吗? 我基本上想要Web api和MVC前端。 请帮忙。 感谢您阅读我的问题。
ASP.NET MVC 支持所有 HTTP 动词。其中一些有自己的属性,但对于其他属性,您需要使用[AcceptVerbs("SomeVerb")]
.您甚至可以将其用于
是的,您可以将多个 Web 应用程序放在同一个项目中。一种方法是在Startup
类的Configure
方法中的IApplicationBuilder
实例上使用 Map。
app.Map("api", apiApp =>
{
// any middleware registered here will only run for "/api/*" URIs.
}
);
但这只会影响中间件的运行。您可能仍需要相应地注册控制器路由。
[Route("api/contacts")]
public class ContactApiController : Controller
{
// ...
}
至于这是否是一个"好的设计",我只能告诉你,这种方法没有什么明显的错误。这只是一个最适合您和您的项目的问题。就个人而言,我的 API 服务器有一个单独的项目,服务器项目引用并向 MVC 注册的每个 API 都有一个项目。另一台服务器只提供静态内容和单页应用程序。有很多方法可以做到这一点。