Gridview C#更改列项目的显示名称

Gridview C#更改列项目的显示名称,gridview,kendo-ui,boolean,inline,Gridview,Kendo Ui,Boolean,Inline,我有一个剑道网格视图,其中一列表示布尔值。在该列中,将显示标记为“true”(表示1或true)、“false”(表示0或false)或空白(表示null)的信息。这看起来不太专业,我正在尝试将网格中的这些值改为显示为Yes、No或None(分别)。我试图实现这一目标的代码是: 型号: namespace MvcApplication.Models { public class Companies { public string IsAdmitted { get

我有一个剑道网格视图,其中一列表示布尔值。在该列中,将显示标记为“true”(表示1或true)、“false”(表示0或false)或空白(表示null)的信息。这看起来不太专业,我正在尝试将网格中的这些值改为显示为Yes、No或None(分别)。我试图实现这一目标的代码是:

型号:

namespace MvcApplication.Models
{
    public class Companies
    {

        public string IsAdmitted { get; set; }
    [HttpPost]
    public ActionResult Companies_Read([DataSourceRequest] DataSourceRequest request)
    {
        using (var companydata = new CompaniesDataContext())
        {
            List<Companies> model = new List<Companies>();
            var companylist = companydata.Companies_JBs.Select(s => s).ToList();
            foreach (var h in companylist)
            {
                Companies x = new Companies();
                x.IsAdmitted = h.IsAdmitted == (bool)true ? x.IsAdmitted = "Yes" : h.IsAdmitted == (bool)false ? x.IsAdmitted = "No" : x.IsAdmitted = "Null";
                model.Add(x);
            }

            return Json(companydata.Companies_JBs.ToDataSourceResult(request));
        }
    }
@(Html.Kendo().Grid(Model)
    .Name("Company_Grid")
    .Columns(columns =>
        {
            columns.Bound(o => o.IsAdmitted).Title("Admitted:").Width(95);
            columns.Command(command => { command.Edit(); command.Destroy(); });
         }
    )
    .ToolBar(toolbar => toolbar.Create().Text("Add a Company"))
    .Editable(editable => editable.Mode(GridEditMode.PopUp).TemplateName("Companies"))
    .Pageable()
    .Sortable()
    .Scrollable()
    .HtmlAttributes(new { style = "height:430px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Events(events => events.Error("error_handler"))
        .Model(model => model.Id(o => o.ID))
        .Create(update => update.Action("Companies_Create", "Home"))
        .Update(update => update.Action("Companies_Update", "Home"))
        .Destroy(update => update.Action("Companies_Destroy", "Home"))
        .Read(read => read.Action("Companies_Read", "Home"))
    )
)
控制器:

namespace MvcApplication.Models
{
    public class Companies
    {

        public string IsAdmitted { get; set; }
    [HttpPost]
    public ActionResult Companies_Read([DataSourceRequest] DataSourceRequest request)
    {
        using (var companydata = new CompaniesDataContext())
        {
            List<Companies> model = new List<Companies>();
            var companylist = companydata.Companies_JBs.Select(s => s).ToList();
            foreach (var h in companylist)
            {
                Companies x = new Companies();
                x.IsAdmitted = h.IsAdmitted == (bool)true ? x.IsAdmitted = "Yes" : h.IsAdmitted == (bool)false ? x.IsAdmitted = "No" : x.IsAdmitted = "Null";
                model.Add(x);
            }

            return Json(companydata.Companies_JBs.ToDataSourceResult(request));
        }
    }
@(Html.Kendo().Grid(Model)
    .Name("Company_Grid")
    .Columns(columns =>
        {
            columns.Bound(o => o.IsAdmitted).Title("Admitted:").Width(95);
            columns.Command(command => { command.Edit(); command.Destroy(); });
         }
    )
    .ToolBar(toolbar => toolbar.Create().Text("Add a Company"))
    .Editable(editable => editable.Mode(GridEditMode.PopUp).TemplateName("Companies"))
    .Pageable()
    .Sortable()
    .Scrollable()
    .HtmlAttributes(new { style = "height:430px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Events(events => events.Error("error_handler"))
        .Model(model => model.Id(o => o.ID))
        .Create(update => update.Action("Companies_Create", "Home"))
        .Update(update => update.Action("Companies_Update", "Home"))
        .Destroy(update => update.Action("Companies_Destroy", "Home"))
        .Read(read => read.Action("Companies_Read", "Home"))
    )
)

当我放置一个断点并检查该值时,它表示isAdministed字段项被标记为Yes、No或None(取决于它们在我的sql数据库中的值)。但是,在网格本身中,它们仍然标记为true、false或blank。我这里有什么问题,或者有更好的方法吗?

为什么返回
Json(companydata.companys\u JBs.ToDataSourceResult(request))

您必须返回
model
。因此,控制器方法的返回语句应该是

return Json(model.ToDataSourceResult(request));