我开始使用Telerik Extensions for MVC。它们没有无缝地集成到我当前的项目中,但我可以重新组织以适应它。
但是,我想知道它最终是否值得。我一直在寻找扩展的评论,我没有看到太多。所以我在这里问。
在他们的网站上他们声称:
你可以实现前所未有的 Web应用程序的性能 具有轻量级,语义 渲染完全扩展 利用没有的ASP.NET MVC模型 回发,没有ViewState,也没有页面 生命周期。
所以我很好奇,您对Telerik Extensions for MVC有什么看法?
答案 0 :(得分:8)
首先是一个小小的免责声明 - 我是Telerik Mvc团队的开发负责人,所以显然我的观点有偏见。
ASP.NET MVC的Telerik Extensions是我们针对ASP.NET MVC平台的全新套件。它从头开始,与ASP.NET Ajax(我们的WebForms产品)的RadControls无关,除了功能和视觉外观。这意味着没有视图状态,没有回发没有Web控件。它附带源代码(根据GPLv2许可),因此可以轻松验证。总之,我们将WebForms控件移植到ASP.NET MVC的语句是不真实的。
实际上,用于ASP.NET Ajax的RadControls(我们的WebForms产品)确实支持ASP.NET MVC应用程序。但是我同意所有需要ViewState的功能(例如RadGrid中的内置编辑)都不起作用。他们也不会工作。我们建议在ASP.NET MVC应用程序中使用RadControls,如果所需的组件仍未在MVC产品系列中实现(现在仍然采取其步骤并且包含4个UI扩展)。当然,我们的计划是发布更多的UI扩展以匹配WebForms套件。
如有任何技术问题或建议,请通过我们的在线论坛与我们联系。我们会尽力回复每一篇文章。
答案 1 :(得分:3)
我只和他们玩了很短的时间,但到目前为止他们看起来还不错。脚本组合器,以及他们流畅的Intellisense感知配置当然很好。
我主要担心的是Javascript方面。在过去,Teleriks WebForms组件以缓慢而肥胖的Javascript而闻名。我确信Telerik正在从头开始构建它(他们使用jQuery作为MVC控件),但我仍然担心旧习惯会重新出现。如果Telerik继续在Javascript端使用jQuery UI,我会更喜欢这种方式,这样他们就可以从jQuery UI中的所有性能和兼容性工作中受益...
答案 2 :(得分:1)
我不太喜欢它们(至少是网格实现)。与WebForms版本相比,它们的功能还不够。此外,服务器端代码充其量也令人困惑。让帮助者识别我自己的jQuery服务器副本是一件苦差事(我仍然没有让它工作)。
但是,然后我发现客户端控件实际上只是implemented as jQuery plugins:
$(document).ready(function() {
$("#Grid").tGrid({
columns:
[
{"name":null,"type":""},
{"name":null,"type":""},
{"name":"text","type":"String"}
],
pageSize:0,
onDataBinding:onDataBinding,
onRowDataBound:onRowDataBound
});
});
在那里,插件tGrid()
初始化我在标记中定义的表格以“辐射”它;)
请记住,这需要零服务器端代码。肯定会在客户端进行更多管道工作(例如样式表包含,脚本和预设标记结构),但至少我知道我正在做什么那里。
答案 3 :(得分:0)
之前我没有使用MVC Telerik控件,但我之前在多个ASP.NET项目中使用过Telerik控件,并且没有很好的体验。我遇到的大多数问题与格式化或需要进行任何形式的自定义有关。总之,如果我要开始另一个项目,我会尝试另一个组件供应商(也许是ComponentArt?)。
答案 4 :(得分:0)
我已经使用了ComponentArt控件几年了,但是当我查看他们的MVC控件时,我发现没有像样的文档或示例,所以我检查了Telerik。他们的MVC控件令人难以置信!我主要使用Grid控件(参见http://www.pdc.wa.gov/mvcquerysystem),它非常快速且易于使用。他们的支持是软件行业中最好的 - 期间。我甚至不是付费客户!他们的内部使用许可是免费的!他们有一个非常活跃的用户社区,可以回应论坛问题(Telerik工程师也经常在论坛上回答并回答大多数问题)。
答案 5 :(得分:-1)
与Kane不同,我在过去的ASP.NET Webforms应用程序中使用Telerik控件有很好的经验(约1年使用)。我没有使用Telerik进行MVC,我也不怀疑自己会这样做。 Telerik扩展需要为MVC进行大量布线,因为它们似乎或多或少地将其WebForms控件“移植”到MVC环境中。
如果Telerik曾经为MVC启动了一个新的产品系列,它是本机mvc辅助控件(我使用'helper'这个词,因为'control'肯定意味着在这种情况下基于回发的WebForms控件)我可能会感兴趣。但是这些明显被“黑客攻击”的WebForms控件对于MVC来说是丑陋的,无论如何都违反了MVC范式。
修改强>
代码like this不支持MVC范例:
IList<CustomerDto> customers = (IList<CustomerDto>)Session["Customers"];
谁想像这样将他们的观点连结到会议?