Hi,
I have just updated my ASP.NET 5 MVC 6 project to the beta8 using the provided beta8 2015.3.1026 nuget package for Telerik UI for ASP.NET MVC (https://www.nuget.org/packages/Kendo.Mvc/2015.3.1026).
There seems to have been many regressions in component fonctionnalities.
For instance, it is no longer possible to use Deferred initialization for grids or notifications.
@Html.Kendo().DeferredScriptsFor(
"grid"
,
false
)
I would suppose this is the case for all components allowing deferred initialization.
Also, it is no longer possible to use Edition (inline or popup) with grids.
I had to comment the folowing features in order for the page to not crash with a HTTP Error 502.3 - Bad Gateway
@(Html.Kendo().Grid<Country>()
.Name(
"grid"
)
//.Deferred()
.Columns(columns =>
{
columns.Bound(p => p.Description);
columns.Bound(p => p.Code);
columns.Bound(p => p.Region);
columns.Bound(p => p.Oecd);
columns.Bound(p => p.UE);
//columns.Command(command => { command.Edit().Text(" ").CancelText(" ").UpdateText(" "); command.Destroy().Text(" "); }).Width(100);
})
//.ToolBar(toolbar => toolbar.Create())
//.Editable(editable => editable.Mode(GridEditMode.InLine))
.Pageable()
.Sortable(sortable => sortable.SortMode(GridSortMode.MultipleColumn))
.Scrollable()
.Filterable(filterable => filterable.Mode(GridFilterMode.Row))
.HtmlAttributes(
new
{ style =
"margin-top:20px;height:400px;"
})
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
.Model(model =>
{
model.Id(p => p.Id);
})
.Sort(sort => sort.Add(
"Description"
).Ascending())
.Read(read => read.Action(
"Get"
,
"Countries"
))
.Create(update => update.Action(
"Create"
,
"Countries"
))
.Update(update => update.Action(
"Update"
,
"Countries"
))
.Destroy(update => update.Action(
"Delete"
,
"Countries"
))
.Events(events => events.Error(
"error_handler"
))
)
)
13 Answers, 1 is accepted
Hello Landry,
Thanks for the report.
Unfortunately, the DeferredScripts issue is caused by change in the way View is rendered. It is rendered asynchronously and the widget is not able register it scripts before the DeferredScriptsFor is called. Thus, currently in order to use the Deferred Scripts feature you will need to rendered widgets by calling their Render method:
@{Html.Kendo().Grid<Country>()
.Name(
"grid"
)
.Deferred()
/*..*/
.Render();
}
Regarding the issue related to the editing. We were able to identify its cause and to address it - again it is due to a change in the ASP.NET MVC framework.
Regards,
Rosen
Telerik

Hello Rosen,
Thank you for your answer.
Will the fix for the edition problem be released before the next build of the ASP.NET 5 MV6 framework (RC)?
Hello Landry,
The fix should be included in the next service pack of Kendo UI, which will be made available sometime next week.
Regards,
Rosen
Telerik

With the new 2015.3.1111 nuget package, when i use the Deferred option in a grid, it says that there is not definition for 'Columns' in the DeferredWidgetBuilder<Grid<Buyer>> type and that not extension methods exists for it.
It seems I can't use the .Deferred() and the .Columns() options together anymore.
The problem exist both with or without the workaround provided previously (with the use of .Render() for handling deferred scriptexecution).
Is it still possible to use deferred execution?

nevermind this.
We just have to use .Deferred() at the end of the grid configuration (after .Columns()).
This works now.
Thanks!

It seems that now the grid assumes the options Groupable and ColumnMenu are on by defaults...
It is possible to disable them explicitly with .Groupable(false) and .ColumnMenu(false) but this is not the documented default behaviour.

Ok so this is a be weird.
This problem occurs only when in a different culture than english.
When using english as a culture, the grouping and columnmenu is off by default.
When switching culture to french for instance, they are on by default.
It is possible to disable grouping explicitly when setting the option in the grid configuration, but the columnmenu stays on even then telling it not to i the grid configuration.
Hello Landry,
Indeed we have change the use of Deferred feature, it should be the set after the all of the configuration. This is described here.
Regarding the other issue you have described. Unfortunately, I'm not able to recreate it locally. Could you please provide a small runnable sample which demonstrates the behavior in question.
Regards,
Rosen
Telerik

Apparently, the documentation you provided for the deferred feature is not up to date with the latest beta build.
With the new nuget package, it is no longer necessary to use the .Render() in order for the deferred execution to work;
We just need to specify the .Deferred() at the end of the grid configuration.
I'll prepare a working solution to demonstrate the problem that I am encountering with localization and defaults options of the grid.
Thank you very much for your time.

Here is a working solution that demonstrates the problem.
When we switch culture from en-US to fr-FR, the grid enables grouping and columnMenu when it should not.
Hello Landry,
Thanks for the sample. We were able to observe the issue and to address it. The fix will be available with the next update of the nuget package.
Regards,
Rosen
Telerik

I suggest you to migrate to the latest version of ASP.NET vNext (RC1 final), which is available since November 2015, and utilize the up-to-date version of Telerik UI for ASP.NET MVC 6 from our public NuGet feed.
You may also review the information from this blog post which includes references to MVC6 sample apps built with Telerik UI for ASP.NET MVC.
Best regards,
Sebastian
Telerik