【问题标题】:Is C# .Net for desktop applications while C#/ASP .Net is for web applications? [closed]C# .Net 是用于桌面应用程序,而 C#/ASP .Net 是用于 Web 应用程序吗? [关闭]
【发布时间】:2015-03-18 17:16:23
【问题描述】:

我开始学习 C#,我对 C# 和 ASP 之间的区别感到困惑。

据我所知,ASP .Net 很可能是一个可以在 C# 代码中使用的服务器端 Web 开发框架,而另一方面,.Net 就像一个用 C# 构建的类库。但是,MVC 来自哪里?如何使用 C# 学习 MVC?

【问题讨论】:

  • 太宽泛,如果不是 - Difference between ASP.Net, C#.Net and VB.Net? 的重复项
  • 有时您会听到人们使用术语 Classic ASP.NET 或 WebForms,它们是同义词。我找不到具体的公告,但一致认为 WebForms 在最新的 ASP.NET5 中“已死”,这意味着 ASP.NET MVC 和 WebApi 是您想要集中学习的工具。
  • 是的,我同意这个共识 - 我并不总是同意更新更好,但是虽然 C# 非常漂亮,但经典的 asp.net(“WebForms”)是。 .. 不漂亮。完全没有。

标签: c# asp.net .net asp.net-mvc


【解决方案1】:

要获得的第一个概念是 .NET,它是您所询问的所有内容的基础框架。它具有可在编程时使用的库和函数。

.NET 框架可以使用多种不同的语言进行开发。 C# 是其中一种语言,还有许多其他语言。

ASP.NET 是一组 .NET 库,其中包含用于开发富 Web 应用程序的工具。 ASP.NET 应用程序将部署在 Web 服务器中,通常是 IIS,但它可以使用其背后的所有 .NET。它可以使用任何可用于 .NET 的语言进行编程,包括 C#。

.NET MVC 应用程序是一个 ASP.NET 应用程序,使用 MVC 设计模式和 ASP.NET 中提供的特殊 MVC 工具。

【讨论】:

  • 另外值得注意的是,ASP(与 ASP.NET 不同)是一种使用 VisualBasic 编写丰富网站的旧技术。它已过时,已被 ASP.NET 取代
  • 非常感谢@FriedDan! !我现在明白了。
【解决方案2】:

C# 是一门语言。

ASP.NET 是一个使用各种编译语言(C# 或 VB.NET)以及标记语言(默认的 ASP.NET 语言,或 Razor,或您插入其中的任何其他语言)的框架。它是您的应用程序和 IIS 之间的桥梁。

ASP.NET MVC 是一组用于 ASP.NET 的库,特别是提供了一种新的标记语言 (Razor) 和各种 IIS 管道组件(URL 重写器、将参数绑定到操作的各种机制等)。

【讨论】:

    【解决方案3】:

    C# 是一种语言。该语言是一种 .net 语言(它使用 .net framework,编译为 CLR 字节码等)。其他 .net 语言也存在 - 最著名的是 VB.net,但也有其他语言。

    ASP.net(即“经典”ASP.net,通常也称为“WebForms”)是与 .net 框架一起使用的 Web 开发框架。您可以用 C# 编写 ASP.net 代码;您还可以用 VB.net 或其他 .net 语言编写 ASP.net 代码。 ASP.net MVC 是一个不同的 Web 开发框架,也可与 .net 框架一起使用 - 您还可以用 C# 或 VB.net 等编写 MVC 代码。

    【讨论】:

    • 那么你的意思是说,有 C# MVC.Net 吗?
    • @germikee 我不会这么说,但是是的 - 你可以使用 C# 编写 mvc.net 代码,在这种情况下,该项目将是 C# MVC.net 项目。
    • 正确,除了没有像 MVC.net 这样的东西。有 ASP.NET MVC,它是 ASP.NET 的一个子组件。
    • @TimRogers 够公平的。虽然每个人都称它为 mvc.net :p,但准确一点是好的。
    • @neminem 也许他们在你的树林里!我没听说过。
    【解决方案4】:

    MVC 只是一种设计模式,可以应用于任何带有用户界面的软件设计。

    • M -- 模型 -- 该层包含您的应用程序使用的数据
    • V-- View -- 这是实际的用户界面
    • C -- 控制器 -- 该层控制模型与之间的交互

    视图。

    您可以在这里阅读更多内容:

    MVC

    【讨论】:

    • 谢谢,@pquest,会的!
    猜你喜欢
    • 1970-01-01
    • 2011-05-04
    • 1970-01-01
    • 2017-07-02
    • 2010-09-26
    • 2013-02-14
    • 2018-03-11
    • 1970-01-01
    • 2014-12-11
    相关资源
    最近更新 更多