我必须使用 ASP.net MVC , Web API 和Jquery for API Call创建应用程序。
现在的问题是:
1)如果是API控制器或简单控制器,我必须使用哪个控制器?
2)如何才能使我的项目结构更好?
如果我在不同项目中使用API,那么我只能使用Ajax调用,但是如何使用Razor和MVC功能模型?
和
如果我在MVC应用程序中使用Controller作为API控制器,那么我如何在应用程序中使用模型和视图?
答案 0 :(得分:0)
因为没有其他人插手。
首先,我已发布的链接。
两者之间有很多“重叠”的术语。
哎呀,我仍然觉得很难知道哪些是有时候的。
MVC适用于“网络层”。这是向最终用户浏览器提供页面的层。 (我大部分时间都在这里,而不是每一个用例)。
当您在Visual Studio中启动Mvc / WebApi项目时,它(其中一个模板)会将MVC和WebApi混合在同一个项目中。
这不是必须如何设置,我工作的专业级应用程序不这样做。
WebApi构建〜服务。这意味着“没有Gui”与数据交互的方式(同样,最常见的用途,而不是详尽的列表)
我的应用程序是MVC,但它在单独的层上调用WebApi。 Aka,我在VS模板中分离了MVC / WebApi的“混合”。
为什么会有人这样做?因为现在,我所拥有的只是浏览器客户端。但是,在将来,如果我需要编写一个智能手机应用程序,我需要做的就是为该智能手机创建表示层,并调用我已用WebApi编写的现有服务。
这是看待它的一种方式。
虽然术语重叠,但它们用于不同目的。