好吧,在经历了漫长的“放假”(12年)之后,我又回到了编程领域。我上次进行的严肃编程是使用Microsoft Access和VB6。现在,对于我的工作,我必须开始学习ASP.NET。所以我下载了Visual Studio,自2002年以来,它已经发生了变化!我什至不认识任何东西。我必须学习称为MVC(sp?)的东西,但是我看到了各种各样的项目类型。控制台,Web API,WPF,Core,MVC,实体框架,Razor。我记得过去的美好时光,您可以调出Windows窗体,弹出一些控件并输入一些Visual Basic代码。我对C ++的经验非常有限。只是裸露的骨头,我的意思是说(也许)我可以识别C#,但是忘了“ Hello World”之外的任何东西。
所以我的问题是:有人可以轻轻解释一下MVC,Razor,实体框架,Web API和WPF之间的区别。我确实有很多虽然具有关系数据库和SQL概念方面的经验,但是无论如何,我的背景始终是更多DBA类型的东西。但是我有一份新工作,必须帮助开发Web数据库应用程序,而且一无所知。
拜托,我知道我要问很多,但我真的不需要很多细节(反正会让我感到困惑),只是快速的Cliffs-Notes版本,例如这些是什么,以及它们是如何做的彼此相关。之所以开始,是因为它们在我看来都一样,而我完全不知所措。非常感谢。请记住,我的上一门语言是Visual Basic 6,而我才刚走出12年的历程。
答案 0 :(得分:3)
顾名思义,MVC遵循一种称为 模型视图控制器。它定义了ASP.NET网站的形状 应用程序及其包含的组件之间的交互。
MVC模式并不是什么新鲜事物,其历史可以追溯到1978年,但是由于以下原因,它获得了广泛的普及:
•MVC模式中的用户交互遵循 自然周期:用户采取行动,作为响应,应用程序更改其行为 数据模型并向用户提供更新的视图。然后循环重复。
•Web应用程序结合了多种技术(数据库,HTML, 和可执行代码),通常会分为一组层。的 这些组合产生的模式自然会映射到 MVC模式。
看看here,以了解有关MVC的更多信息。
在ASP.NET Core MVC应用程序中,视图引擎用于呈现已发送到客户端的内容。默认的视图引擎称为Razor,它处理带注释的HTML文件,这些文件会将动态内容插入发送到浏览器的输出中。
这不适用于ASP.NET,ASP.NET Core MVC 2中引入了Razor页面。
了解剃须刀页面here。
Entity Framework Core(也称为EF Core)是Microsoft生产的对象关系映射(ORM)程序包,它允许.NET Core应用程序将数据存储在关系数据库中。
采用另一种方法,实体框架核心充当ASP.NET Core MVC应用程序和数据库之间的桥梁。
详细了解EF here。
MVC的流行启发了另一个新的网络媒体资源。 WEB API。 MVC试图从Web窗体离开的地方起飞,而WEB API试图对简单对象访问协议(SOAP)进行同样的操作。
继续阅读有关WEB API's的信息。