Razor是否像LINQ一样与.net相关?

本文关键字:一样 net 相关 是否 LINQ Razor | 更新日期: 2023-09-27 18:16:36

Anders Hejlsberg将LINQ描述为语法糖。换句话说,它仍然是c#。只是他们添加了一些快捷方式,这样你就不必手工编写LINQ为你创建的所有代码。但是c#语言和。net运行时没有发生任何结构上的变化。

Razor也是这样吗?

我不确定当事物被表示为层时它是如何排列的。例如,这是正确的吗?

Razor
 ^
ASP.NET
 ^
C#
 ^
.NET

我相信这是正确的,但我不确定如何ASP。NET很适合。Razor是ASP。除了它增加了一些额外的语法,还是更多?

ASP是什么?净增加?

Razor是否像LINQ一样与.net相关?

  1. Linq不只是语法糖。c#中Linq的简写形式是,但你根本不需要它来使用Linq。

  2. Linq是一堆东西。它是IEnumerable &可查询的,它是lambda和匿名类型,yield和延迟执行管道。Linq包含了微软在Framework 3.5中添加到。net中的所有内容。

  3. Razor是一个渲染HTML的模板引擎

你的图在依赖关系图方面是正确的。然而,最好把razor看作是用c#编写的web模板语言。在某些方面,图表是不准确的。一般来说,c#并不真正依赖于。net。你可以为c#编写一个非。net运行时。

同样的,Razor也不需要依赖于ASP.NET。事实上,它目前的实现依赖于ASP中的类。. NET MVC只间接依赖于asp.net。净的传统。

说剃刀是为了ASP。. NET链接Linq对c#是有点不准确的。Linq是System中的一组函数。Linq命名空间,例如Where http://msdn.microsoft.com/en-us/library/system.linq.enumerable.where.aspx。c#提供了方便的语法来调用这些函数,例如http://msdn.microsoft.com/en-us/library/bb310804.aspx

然而,Razor并没有如此清晰地区分语法和后端函数调用。