Telerik Forums
UI for ASP.NET Core Forum
6 answers
218 views

Please refer to the screen cast link below.  During inline editing when the time column is clicked to begin editing the existing time is cleared.  Also after the time and then entering the am pm designator the time is cleared and the editor closes.  Entering a time is actually only possible when the DateTime model property is marked as nullable otherwise a validation error is thrown.  (All in the video)

Grid:

@(Html.Kendo().Grid<Aero.Models.Leg>()
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.FlightID);    
        columns.Bound(p => p.Origin);
        columns.Bound(p => p.Destination);
        columns.Bound(p => p.Start); 
        columns.Bound(p => p.TakeOff);
        columns.Bound(p => p.Landing);
        columns.Bound(p => p.Stop);
    })
    .ToolBar(toolBar =>
    {
        toolBar.Save();
        toolBar.Create();
    })
    .Editable(editable => editable.Mode(GridEditMode.InCell))
    .Scrollable()
    .Resizable(resize => resize.Columns(true))
    .HtmlAttributes(new { style = "height:430px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .Batch(true)
        .PageSize(20)
        .ServerOperation(false)  
        .Model(model =>
        {
            model.Id(p => p.LegID);
            model.Field(p => p.LegID).Editable(false);         
        })
        .Read(read => read.Action("Legs_Read", "Test", new {  id = Model.FlightID }))
        .Update(update => update.Action("Legs_Update", "Test"))
        //.Create(create => create.Action("ForeignKeyColumn_Create", "Grid"))
        //.Destroy(destroy => destroy.Action("ForeignKeyColumn_Destroy", "Grid"))
    ).Deferred()
)

 

Model:

   public class Leg

    {
        public int LegID { get; set; }

        [DataType(DataType.Time)]     
        public DateTime? Start { get; set; }

        [DataType(DataType.Time)]  
        public DateTime? Stop { get; set; }

        [DataType(DataType.Time)]
         public DateTime TakeOff { get; set; }

        [DataType(DataType.Time)]       
        public DateTime Landing { get; set; } 

        public string Origin { get; set; }
        public string Destination { get; set; }

        public string Notes { get; set; }

        [Display(Name = "Flight")]
        public int? FlightID { get; set; }
        public virtual Flight Flight { get; set; }
    }

https://screencast-o-matic.com/watch/cbiQc1lbrz

Reafidy
Top achievements
Rank 2
Iron
 answered on 12 Aug 2017
10 answers
654 views

DropDownList  The binding indicates that the data is delayed

The first step shows the value

Second step display text

Joana
Telerik team
 answered on 11 Aug 2017
1 answer
159 views
How in core do we add the "All" page size option, there is no list<object> overload it just wants an array of ints.
Georgi
Telerik team
 answered on 10 Aug 2017
5 answers
326 views
Hello,
I am trying use this example http://demos.telerik.com/aspnet-core/grid/detailtemplate to insert a grid within another grid. However, I am getting an error of "Invalid Tempate". I have included a screen shot of both the error and the code I am using for the grid.
Pavlina
Telerik team
 answered on 09 Aug 2017
1 answer
221 views

How can I add the sum of a column to the pageing footer like in this example:

https://s3.amazonaws.com/telerik-media/telerik-videos/controls/grid-bootstrap-fallback.jpg

I would like to replace the text in the picture "56 cars matching your criteria"  with "Total Price: $x.xx"

Viktor Tachev
Telerik team
 answered on 09 Aug 2017
2 answers
84 views

Im using 3 tier.

1 presenter

2 service (webapi & service business logic layer)

3 data access

this is my presenter code

@(Html.Kendo().Grid<ParkingRevenueViewModel>()
  .Name("grid")
  .Columns(columns =>
  {
      columns.Bound(p => p.ParkDate).Width(20).Title("Date").Format("{0:dd/MM/yyyy}").Filterable(true);
      columns.Bound(p => p.VehRegNbr).Width(100).Title("Vehicle No");
      columns.Bound(p => p.RoadName).Width(150).Title("Road").Filterable(false);
      columns.Bound(p => p.LotNo).Width(50).Title("Lot No");
      columns.Bound(p => p.StartTime).Width(100).Title("Parking Time").Format("{0:dd/MM/yyyy h:mm:ss tt}").Filterable(false);
      columns.Bound(p => p.Value).Width(50).Title("Value").Filterable(false);
  })
  .Filterable()
    .Pageable()
 
    .DataSource(dataSource =>
    dataSource
    .WebApi()
        .Aggregates(aggregates =>
        {
            aggregates.Add(p => p.Value).Sum();
        })
    .Events(events => events.Error("error_handler"))
    ).Deferred()
        )
 

 

this is my webapi code

[HttpGet("ParkingRevenueByMonth")]
        public DataSourceResult ParkingRevenueByMonth([DataSourceRequest]DataSourceRequest request, int? Month = 0)
        {
            var model = reportsService.GetParkingRevenueByMonth(request, Month);
            return model;
        }

 

service layer

public DataSourceResult GetParkingRevenueByMonth(DataSourceRequest request, int? Month=0)
        {
 
            var now = DateTime.Now.ConvertToMalaysiaTime();
            if (Month == null || Month == 0)
            {
                Month = now.Month;
            }
            var firstOfMonth = new DateTime(now.Year, (int)Month, 1);
            var endOfMonth = firstOfMonth.AddMonths(1).AddMilliseconds(-1);
 
            var list = unitOfWork.GetRepository<ParkTable>().GetAll().Where(w=> firstOfMonth.Date <= w.TimeStart.Date && w.TimeStart.Date <= endOfMonth.Date);
            var returnModel = list.Select(s => new ParkingRevenueViewModel
 
            {
                ParkDate = s.TimeStart.Date,
                VehRegNbr = s.VehRegNbr,
                LotNo = s.GeoRoadParkLot.GeoParkLot.LotNo,
                RoadName = s.GeoRoadParkLot.GeoRoad.Description,
                StartTime = s.TimeStart,
                Value = s.Amount
            });
 
            return returnModel.ToDataSourceResult(request);
        }

 

the error thrown

at Kendo.Mvc.Infrastructure.Implementation.Expressions.GroupDescriptorExpressionBuilder.CreateProjectionNewExpression(IEnumerable`1 propertyValuesExpressions)
at Kendo.Mvc.Infrastructure.Implementation.Expressions.GroupDescriptorExpressionBuilder.CreateProjectionInitExpression()
at Kendo.Mvc.Infrastructure.Implementation.Expressions.GroupDescriptorExpressionBuilder.CreateAggregateFunctionsProjectionMemberBinding()
at Kendo.Mvc.Infrastructure.Implementation.Expressions.QueryableAggregatesExpressionBuilder.<CreateMemberBindings>d__3.MoveNext()
at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable`1 source, Int32& length)
at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable`1 source)
at System.Dynamic.Utils.CollectionExtensions.ToReadOnly[T](IEnumerable`1 enumerable)
at System.Linq.Expressions.Expression.MemberInit(NewExpression newExpression, IEnumerable`1 bindings)
at Kendo.Mvc.Infrastructure.Implementation.Expressions.GroupDescriptorExpressionBuilder.CreateSelectExpression()
at Kendo.Mvc.Infrastructure.Implementation.Expressions.GroupDescriptorExpressionBuilderBase.CreateQuery()
at Kendo.Mvc.Extensions.QueryableExtensions.Aggregate(IQueryable source, IEnumerable`1 aggregateFunctions)
at Kendo.Mvc.Extensions.QueryableExtensions.CreateDataSourceResult[TModel,TResult](IQueryable queryable, DataSourceRequest request, ModelStateDictionary modelState, Func`2 selector)
at Kendo.Mvc.Extensions.QueryableExtensions.ToDataSourceResult(IEnumerable enumerable, DataSourceRequest request)
at NI.Service.ReportsServices.GetParkingRevenueByMonth(DataSourceRequest request, Nullable`1 Month) in d:\documents\visual studio 2017\Projects\Nova\NI.Service\ReportsServices.cs:line 53
at NI.WebApi.Controllers.ReportsController.ParkingRevenueByMonth(DataSourceRequest request, Nullable`1 Month) in d:\documents\visual studio 2017\Projects\Nova\TestApi2\Controllers\ReportsController.cs:line 32
at lambda_method(Closure , Object , Object[] )
at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeActionMethodAsync>d__27.MoveNext()

 

 

 

Angel Petrov
Telerik team
 answered on 04 Aug 2017
2 answers
117 views

Hi referring to the attached, What should I write to capture the old record &latest record ? 

1. On Button clicked on "Saved Changes" [Show in [1]]

2. On Clicked on "Button"  [Shown in [2]]

I have tried but i am still getting the old records but no avail .... perhaps some enlightenment will be great.. 

Stefan
Telerik team
 answered on 04 Aug 2017
5 answers
3.6K+ views
I am using the Kendo DateInput inside my razor views as below

 <span>Date of Birth</span>
    @(Html.Kendo().DateInput().Name("Patient.Dob").Format("dd-MMM-yyyy").Min(new DateTime(1900, 1, 1))
             .Max(DateTime.Today).Messages(m => m.Year("yyyy").Day("dd").Month("mmm")))
 
When the date of birth is not entered, the model state validation fails as it tries to validate the placeholder value - ("dd-MMM-yyyy")

How can i specify the placeholder, such that it does not do model state validation
Boyan Dimitrov
Telerik team
 answered on 03 Aug 2017
1 answer
675 views

When I try to  add event to a multiselect I get this error

cannot use a lambda expression as an argument to a dynamically dispatched operation without first casting it to a delegate or expression tree type

 I have tried these to method to add event

@(Html.Kendo().MultiSelectFor(m => m.OmviserNavne)
                                    .Placeholder("Vælg omviser...")
                                    .BindTo(ViewBag.Omviser)
                                    .Events(e =>
                                    {
                                        e.Change("onOmviserChange")
                                    })
                                    .Deferred())

@(Html.Kendo().MultiSelectFor(m => m.OmviserNavne)
                                    .Placeholder("Vælg omviser...")
                                    .BindTo(ViewBag.Omviser)
                                    .Events(events => events.Change("onOmviserChange"))
                                    .Deferred())

Dimitar
Telerik team
 answered on 02 Aug 2017
7 answers
609 views

Hello, 

I'm trying to get a grid with a select option just like this example http://demos.telerik.com/aspnet-core/grid/checkbox-selection

My grid loads with all the proper data however the columns.Select().Width(50);  does not load any check boxes like the example does. 

Here is the code that I am using.  I will also attach a screen shot of what this produces. 

@(
    Html.Kendo()
        .Grid<PlanReviewItemViewModel>()
        .Name("linkFolderAttachmentPlanReviewItems")
        .Columns(col =>
        {
            col.Select().Width(50);
            col.Bound(p => p.MunicipalNumber);
        })
        .Sortable()
        .DataSource(ds =>
        {
            ds.Ajax()
                .Read(read =>
                {
                    read.Action("GetPlanReviewItems", "PlanReviewItemsApi", new { caid = "PLDG5" });
                });
        })
)

Preslav
Telerik team
 answered on 02 Aug 2017
Narrow your results
Selected tags
Tags
+? more
Top users last month
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?