Telerik Forums
UI for ASP.NET Core Forum
1 answer
1.9K+ views

I need to pass parameter with grid to controller just i want to pass  

BusId , FlightId , griddata to controller 

 

this funtion send only griddata  i want to add BusId , FlightId to save it in one table

   function SaveData(e) {

        var List = []

        BusId: $("#BusId").val() form DropdownList (1) cascadeDrop

       FlightId: $("#Flights").val()  form DropdownList (2) cascadeDrop

       var griddata = $("#Grid").data("kendoGrid"); From Selected Grid

        var rows = griddata.select(); which i selected form grid
        rows.each(function (e) {
            var dataItem = griddata.dataItem(this);
            List.push(dataItem);
        });
       
           $.ajax({
                 type: "POST",
                 url: "@Url.Action("Create", "Employee")",
                 dataType: "text",
                 data: JSON.stringify(List),
                 contentType: "application/json; charset=utf-8",
                 processData: false,

               success: function (data) {

               },

               error: function (e) {

}

   viewModel

   public class EmpViewModel
    {
        public int BusId{ get; set; }

        public int FlightId{ get; set; }

       public List<Employee>AllEmployee{ get; set; }
    }

 

Controller

public IActionResult Create([FromBody] IEnumerable<Employee> empList)
        {

        }

                                                                  
Stoyan
Telerik team
 answered on 01 Jun 2021
1 answer
1.3K+ views

Hello,

I saw an example by you guys for razor pages but I need it done for CRUD operations for a data source in the sql server. Assume I have appsettings.json file setup with the correct sql server connection string along with ApplicationDBContext setup in the startup.cs file in the configureservices section to allow dependency injection and the ApplicationDBContext was passed through a constructor for the specified model referenced in the code below to utilize dependency injection. What else would I need to change in the code to allow me to do CRUD operations on razor pages that utilizes entity framework core sql server as its data source?


@page
@model Telerik.Examples.RazorPages.Pages.Grid.GridCrudOperationsModel
@{
    ViewData["Title"] = "GridCrudOperations";
}

<h1>GridCrudOperations</h1>

@using Telerik.Examples.RazorPages.Models
@using Kendo.Mvc.UI

@inject Microsoft.AspNetCore.Antiforgery.IAntiforgery Xsrf
@Html.AntiForgeryToken()

@(Html.Kendo().Grid<OrderViewModel>().Name("grid")
                .Groupable()
                .Sortable()
                .Editable()
                .Scrollable()
                .ToolBar(x => {
                    x.Create();
                    x.Excel();
                })
                .Columns(columns =>
                {
                    columns.Bound(column => column.Freight);
                    columns.Bound(column => column.ShipName);
                    columns.Bound(column => column.ShipCity);
                    columns.Command(column =>
                    {
                        column.Edit();
                        column.Destroy();
                    });
                })
                 .Excel(excel => excel
                            .FileName("Export.xlsx")
                            .Filterable(true)
                            .ProxyURL("/Grid/GridCrudOperations?handler=Save")
                        )
                .DataSource(ds => ds.Ajax()
                       .Read(r => r.Url("/Grid/GridCrudOperations?handler=Read").Data("forgeryToken"))
                       .Update(u => u.Url("/Grid/GridCrudOperations?handler=Update").Data("forgeryToken"))
                       .Create(c => c.Url("/Grid/GridCrudOperations?handler=Create").Data("forgeryToken"))
                       .Destroy(d => d.Url("/Grid/GridCrudOperations?handler=Destroy").Data("forgeryToken"))
                       .Model(m => m.Id(id => id.OrderID))
                    .PageSize(10)
                )
                .Pageable()
)

<script>
    function forgeryToken() {
        return kendo.antiForgeryTokens();
    }
</script>

 


using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Telerik.Examples.RazorPages.Models;
using Kendo.Mvc.Extensions;
using Kendo.Mvc.UI;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;

namespace Telerik.Examples.RazorPages.Pages.Grid
{
    public class GridCrudOperationsModel : PageModel
    {
        public static IList<OrderViewModel> orders;

        public void OnGet()
        {
            if (orders == null)
            {
                orders = new List<OrderViewModel>();

                Enumerable.Range(0, 50).ToList().ForEach(i => orders.Add(new OrderViewModel
                {
                    OrderID = i + 1,
                    Freight = i * 10,
                    ShipName = "ShipName " + i,
                    ShipCity = "ShipCity " + i
                }));

            }
        }

        public JsonResult OnPostRead([DataSourceRequest] DataSourceRequest request)
        {
            return new JsonResult(orders.ToDataSourceResult(request));
        }

        public JsonResult OnPostCreate([DataSourceRequest] DataSourceRequest request, OrderViewModel order)
        {
            order.OrderID = orders.Count + 2;
            orders.Add(order);

            return new JsonResult(new[] { order }.ToDataSourceResult(request, ModelState));
        }

        public JsonResult OnPostUpdate([DataSourceRequest] DataSourceRequest request, OrderViewModel order)
        {
            orders.Where(x => x.OrderID == order.OrderID).Select(x => order);

            return new JsonResult(new[] { order }.ToDataSourceResult(request, ModelState));
        }

        public JsonResult OnPostDestroy([DataSourceRequest] DataSourceRequest request, OrderViewModel order)
        {
            orders.Remove(orders.FirstOrDefault(x => x.OrderID == order.OrderID));

            return new JsonResult(new[] { order }.ToDataSourceResult(request, ModelState));
        }

        [HttpPost]
        public ActionResult OnPostSave(string contentType, string base64, string fileName)
        {
            var fileContents = Convert.FromBase64String(base64);

            return File(fileContents, contentType, fileName);
        }
    }
}

 

Aleksandar
Telerik team
 answered on 31 May 2021
1 answer
307 views
Why the AdditionalFields are not passed along in the validation when InCell mode? SO question here
Mihaela
Telerik team
 answered on 27 May 2021
1 answer
2.1K+ views

I have a simple grid setup with the datasource is returning a list.

  <kendo-grid name="grid" height="550">
      <datasource type="DataSourceTagHelperType.WebApi" page-size="5">
          <transport>
               <read url="@Url.Action("GetSchedule", "Home")" />
          </transport>
      </datasource>
      <columns>
           <column field="SalesRepName" title="Sales Agent" />               
           <column field="Shift" title="Shift" />
           <column field="Phone" title="Phone" />
      </columns>
 </kendo-grid>

  public ActionResult GetSchedule([DataSourceRequest] DataSourceRequest request)
        {
            // get scheduled sales rep.
            var result = _idb.RetrieveCurrentSchedule("LSL", "NH");

            var dsResult = result.ToDataSourceResult(request);

            return Json(dsResult);

        }
bundle.js:1 Uncaught TypeError: Cannot read property 'slice' of undefined

 

Mihaela
Telerik team
 answered on 26 May 2021
1 answer
105 views

I am trying to aggregate my chart data but having no luck, I can do this using jqery version but not the .net core verion.

date is coming from a view model:
DataValue
DataCategory
DataColour

I have multiple entries so I need to sum the DataCategory up.

Ive been trying aggregates.Add and groups.add to the data source but ive had no luck getting the chart to display correctly.

@(Html.Kendo().Chart(Model.ChartSetup)
            .Name(@"ChartName")

            .Series(series =>
            {

                series.Donut(model => model.DataValue, categoryExpression: model => model.DataCategory).ColorField("DataColour")

             .Overlay(o => o.Gradient(ChartSeriesGradient.None))

                .Labels(labels => labels
                .Position(ChartBarLabelsPosition.OutsideEnd)

                .Visible(false)

                      .Template("#= category # - #= kendo.format('{0:P}', percentage)#")
                );
            })


            )
Aleksandar
Telerik team
 answered on 26 May 2021
1 answer
116 views

I have a Grid with Popup Edit.

In the popup, there is a  required combobox, that should be selected only in Create mode. But in Edit mode, the selected combo value should be readonly. How to implement that logic? 

Tsvetomir
Telerik team
 answered on 26 May 2021
1 answer
826 views

Hello,

I bought kendo UI ASP.NET Core and i using it in my asp net core project.

i want to use kendo ui map in my project and i use tile layer like this

 

 layers: [{
                            type: "bing", // this layer is the map  , layer[0]
                            imagerySet: "aerialWithLabels",

                            key: "h0yO0NtadB4lkxJAaBhO~9ZxiGd8wv3tE3MGtwDCVaQ~AvJmJR3vegm0gJw6grYJ2OnnVtgMio1FeEMb4mMBKU2qmxvtIZxx7Hl-rAasXWSH"
                        }

 

the key is my key from microsoft bing map.

 

my question:

i want to use the map without internet connection . i have rastar map on local file in my computer and i want to use this map or bing map offline without internet

 

is it possible? and how can i do this? i try many guide in the site and i just cant understand what is wrong.

Tsvetomir
Telerik team
 answered on 25 May 2021
0 answers
507 views
In the editor, when you click create link it shows http in the text box. Our customer would like that to be https:// by default. How can I change this? I've using Tag Helpers.
Scott
Top achievements
Rank 1
 asked on 24 May 2021
1 answer
134 views

I have attached the exact error message after migrating to core, some of the chart in Kendo is not working. 

Please advise if this related to the kendo version or code config change with core?

Thanks

Georgi
Telerik team
 answered on 24 May 2021
9 answers
1.8K+ views

the exception is:

"Processing of the LINQ expression 'GroupByShaperExpression:
KeySelector: t.Year,
ElementSelector:EntityShaperExpression:
    EntityType: ProjectBudget
    ValueBufferExpression:
        ProjectionBindingExpression: EmptyProjectionMember
    IsNullable: False
' by 'RelationalProjectionBindingExpressionVisitor' failed. This may indicate either a bug or a limitation in EF Core. See https://go.microsoft.com/fwlink/?linkid=2101433 for more detailed information."

 

this happens when the DataSourceRequest contains Group, and the IQueriable items are empty

 
Carlos
Top achievements
Rank 2
Iron
Iron
Iron
 updated answer on 24 May 2021
Narrow your results
Selected tags
Tags
+? more
Top users last month
Jay
Top achievements
Rank 3
Bronze
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jay
Top achievements
Rank 3
Bronze
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?