我对新的Razor语法有一点经验,但对Iron Python一点经验都没有。我想知道两者是否满足相同的需求?其中一个是微软喜欢的(或将会是)?感谢你的想法,因为我正在玩弄学习Iron Python的想法,但如果Razor可以满足同样的需求,我可能不会。
发布于 2010-10-13 02:08:32
在PaulStack给出的答案上进行扩展:
Razor是一个模板化引擎(倾向于模板化XML式文档,例如HTML页面),它在MVC3中作为视图引擎可用,也是ASP.NET网页(它是WebMatrix堆栈的一部分)中的默认页面语法。Razor解析器使用关于XML文档结构的假设,以及两种受支持的编程语言(C#和Visual Basic)中可用的构造,以最小化在代码模式和标记模式之间转换所需的转换字符的数量。
虽然它的编写重点是发出HTML,但它已经被泛化为支持任意的文本模板任务(尽管在某些情况下,您可能需要使用特殊的转换令牌来强制在代码和文本之间切换)。
另一方面,IronPython是一种编程语言。它不是模板引擎,尽管它自然可以用来编写发出文本流的代码。
如果你已经习惯了C# (或者VB),那么我建议你试试Razor。它是对语言语法的一个相当简单的扩展,并且允许在标记和代码之间进行非常平滑的转换。
发布于 2010-10-13 00:18:36
Razor是一个用于ASP.NET MVC3的视图引擎--所以我认为它与IronPython所占据的空间无关
如果我错了,那么我肯定遗漏了一些东西。
发布于 2010-10-13 00:25:54
我在听一个在IronPython和IronRuby上工作的人的演讲。他似乎表达的总体观点是,IronPython不像IronRuby或C#那样能够胜任构建现代ASP.NET MVC站点的任务。话虽如此,但从那时起,这种情况可能会发生变化。
但你在这里把苹果和橙子做比较。IronPython是一种成熟的动态语言。Razor只是一种标记语言和视图引擎,用于在ASP.NET MVC站点中定义视图。应用程序的控制器和大部分代码仍然必须用实际的语言(如C#、Python等)编写。
https://stackoverflow.com/questions/3916787
复制相似问题