jQuery方法链接与C#/VB缺少方法链接
jQuery的哪些内在属性及其满足的需求使其成为构建器模式和方法链接的理想候选对象 换一种方式问,C#/VB.NET核心库是否可以使用更多类似于jQuery的方法链接重写,或者是否存在一些继承、限制因素 很多问题都归结为JavaScript是动态的还是类型化的,比如VB/C,或者jQuery最感兴趣的是DOM操作?你可以用C链接方法,很好。例如,这一直都是使用Linq完成的 要了解C#中的方法链接实现,请参阅 这有时也被称为是一个错误 基本思想是,参与链的每个方法都返回jQuery方法链接与C#/VB缺少方法链接,c#,jquery,method-chaining,builder-pattern,C#,Jquery,Method Chaining,Builder Pattern,jQuery的哪些内在属性及其满足的需求使其成为构建器模式和方法链接的理想候选对象 换一种方式问,C#/VB.NET核心库是否可以使用更多类似于jQuery的方法链接重写,或者是否存在一些继承、限制因素 很多问题都归结为JavaScript是动态的还是类型化的,比如VB/C,或者jQuery最感兴趣的是DOM操作?你可以用C链接方法,很好。例如,这一直都是使用Linq完成的 要了解C#中的方法链接实现,请参阅 这有时也被称为是一个错误 基本思想是,参与链的每个方法都返回this,因此可以通过引
this
,因此可以通过引用前一次调用的返回值来调用类的其他方法
没有任何技术可以阻止核心库被重写以更广泛地使用方法链接。实际上,重写核心库会破坏所有现有的.NET应用程序
当然,可以编写一个库,为核心库中的内容提供流畅的接口。脑海中浮现的一件事是System.IO中对流和读卡器的处理。您可以用C#很好地链接方法。例如,这一直都是使用Linq完成的
要了解C#中的方法链接实现,请参阅
这有时也被称为是一个错误
基本思想是,参与链的每个方法都返回this
,因此可以通过引用前一次调用的返回值来调用类的其他方法
没有任何技术可以阻止核心库被重写以更广泛地使用方法链接。实际上,重写核心库会破坏所有现有的.NET应用程序
当然,可以编写一个库,为核心库中的内容提供流畅的接口。想到的一件事是System.IO中对流和读卡器的处理。不,有几个C#库是用类似的“链接”编写的。它通常被称为fluentapi。其中一个例子是Fluent-NHibernate,但还有很多例子,因为它只是构建代码的一种方式。这并不是动态语言和静态语言的限制不,有几个C#库是用类似的“链接”编写的。它通常被称为fluentapi。其中一个例子是Fluent-NHibernate,但还有很多例子,因为它只是构建代码的一种方式。对于基于错误前提的问题,这不是动态语言和静态语言的限制。@JohnSaunders:我读这个问题的方式和你一开始读的一样。事实证明(根据他对我的回答的评论,并仔细重读了这个问题),他在问是否可以重写核心.NET库以更多地使用方法链接,或者,如果存在某种内在的技术因素,理论上可以防止这种情况发生。-1对于基于错误前提的问题。@JohnSaunders:我读这个问题的方式和你一开始读的一样。事实证明(基于他对我的回答的评论,并仔细重读了这个问题),他在问核心.NET库是否可以重写以更多地使用方法链接,或者是否有某种内在的技术因素在理论上会阻止这一点。是的,我知道这是可能的。我的问题是,为什么不使用核心库,而使用jQuery?您可能需要询问编写核心库的人员,以获得明确的答案。我的猜测是,当.NET1.0在2000-2001年的时间框架内开发时,该模式在行业中没有广泛使用,因此团队没有考虑实施它。即使是.NET1.0也具备了实现方法链接所需的一切,因此它当然没有任何技术限制。是的,我知道这是可能的。我的问题是,为什么不使用核心库,而使用jQuery?您可能需要询问编写核心库的人员,以获得明确的答案。我的猜测是,当.NET1.0在2000-2001年的时间框架内开发时,该模式在行业中没有广泛使用,因此团队没有考虑实施它。即使是.NET1.0也拥有实现方法链接所需的一切,因此它当然没有任何技术限制。