我正在开发一个ASP.Net web api应用程序,并在客户端使用kendoUI。我发现了this博客文章,其中描述了KendoUI和Telerik的不同之处,但它没有反映出这两者之间的任何架构差异。这两个UI框架在架构方面是否存在很大差异,这可能会导致性能差异?我很想知道深度差异以及为什么Telerik团队决定提出一个新的解决方案作为KendoUI。
答案 0 :(得分:12)
早些时候,我们称之为Telerik Extensions for MVC。 Telerik Extensions减轻了一些UI工作量,因为它们会输出HTML,但开发人员允许使用一些帮助程序来创建通用控件。对于例如
<%= Html.Telerik().Calendar()
.Name("Calendar")
.Value((DateTime)ViewData["selectedDate"])
.MinDate((DateTime)ViewData["minDate"])
.MaxDate((DateTime)ViewData["maxDate"])
.TodayButton("d")
%>
上面的代码会在客户端呈现时输出日历ui控件。这是任何服务器端动态内容创建技术(如ASP.NET,JSP,PHP等)的基本基础。客户端HTML实际上是在为页面发出请求时从服务器中吐出。
现在,使用基于HTML5和JavcaScript的UI控件库的Kendo UI,可以在客户端初始化一堆UI控件,而无需担心服务器端的管道。如果你使用Kendo UI Web控件,你作为开发人员会初始化我们在客户端调用的小部件,并使用AJAX来获取让我们说JSON有效负载并将其绑定到小部件。例如
<div id="calendar"></div>
<script>
$(document).ready(function() {
// create Calendar from div HTML element
$("#calendar").kendoCalendar();
});
</script>
上面的代码将创建一个kendo日历小部件,但它在客户端初始化。
我们还有用于ASP,NET MVC Wrappers的Kendo UI Web - 意思是 - 对于Kendo UI Web也存在与Telerim MVC扩展非常相似的包装。例如。
@(Html.Kendo().Grid<Product>()
.Name("Grid")
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("AjaxBinding_Read", "Grid"))
)
)
上面的代码将在客户端呈现时输出一个kendo ui web网格。
我试图告诉您Telerik MVC扩展和Kendo UI Web控件之间的基本区别。我们希望您切换到Kendo UI Controls,因为它们遵循HTML5标准,也适用于便携式设备。
希望这能回答你的问题。
Lohith(技术传播者,Telerik India)