1
A
回答
2
是的,它是可能的但如果你希望为使用来自多个不同的客户端您的API我建议你创建你的API作为一个单独的应用程序,然后可以管理/相应的缩放。
本质上,你指的是“狗食”你自己的API,使你自己的web应用程序没有任何不同于任何其他客户端。
我们做类似的事情,让我们的MVC应用程序调用我们的API(使用HttpClient
)。我们在同一个应用程序中也有很多客户端代码,它们直接使用CORS调用API。
我们已经将这个架构在生产中运行了2年,现在没有任何问题。
1
这里是我如何调用从MVC控制器我的Web API控制器:
public class invoiceController : ApiController
{
private myEntities db = new db1Entities();
// GET api/invoices
public IQueryable<invoices> Getinvoices()
{
return db.invoices;
}
}
内单独MVC控制器:
public ActionResult ShowInvoices()
{
var webApi = new invoicesController();
//this must return strongly typed object
var myarray = webApi.Getinvoices();
return View(myarray);
}
+0
这不是一个好方法。如果您想在* same *应用程序中共享MVC和Web API之间的逻辑,请将其移入单独的类;不要从MVC调用Web API控制器。 –
相关问题
- 1. WEB API控制器与MVC控制器
- 2. 在web api控制器中使用ControllerContext.RequestContext
- 3. Web API和MVC 4控制器中使用StructureMap的问题
- 4. 安全MVC的Web API控制器
- 5. Web API控制器和MVC控制器 - 身份验证
- 6. 从mvc控制器消费web api控制器动作
- 7. MVC 4控制器和Web Api控制器
- 8. 通用Web API控制器
- 9. 使用RestSharp将文件从MVC控制器上传到Web API
- 10. ASP.Net MVC 4 Web API控制器不能使用Unity.WebApi
- 11. 使用泛型与web api控制器
- 12. Web 2/MVC 5重用控制器
- 13. 何时使用API控制器与MVC控制器
- 14. Angularjs在Asp.net MVC项目调用Web API控制器
- 15. 在ASP.NET MVC Web api控制器中上传文件
- 16. 如何禁用服务器端验证mvc web api控制器
- 17. 从MVC“控制器到WEB API控制器”的调用方法异步?
- 18. 在常规mvc控制器中使用身份的单元测试方法(不是web api控制器)
- 19. Spring Web MVC中的嵌套控制器
- 20. 的Web API 2 - 控制器
- 21. 设计Web API控制器
- 22. Web API - 控制器设计
- 23. asp.net MVC Project-如何在控制器中使用API url
- 24. 不允许在ASP.Net Web API控制器中使用405方法
- 25. 在web api中使用spring.net来实例化控制器
- 26. 在mvc中使用多个控制器
- 27. 在ASP.net MVC控制器中使用Url.Content
- 28. 在MVC中使用控制器
- 29. 可以在MVC控制器名称中使用“控制器”
- 30. 用于Web API的ASP.NET MVC Core控制器PATCH方法
一般来说,有两种整洁的方式来处理这个:要么调用使用Javscript从页面本身获取WebAPI方法,或者将这些方法的内部逻辑移动到一个单独的位置,MVC控制器和WebAPI可以随意调用它。 – anaximander