【问题标题】:Nullable property in Infragistics Ignite UI gridInfragistics Ignite UI 网格中的可空属性
【发布时间】:2013-11-08 23:18:57
【问题描述】:

我在我的 ASP.NET MVC 4 应用程序中使用 Infragistics Ignite UI 网格。这是视图中的样子:

@model IQueryable<User>

@( Html.Infragistics().Grid( Model )
       .AutoGenerateColumns( false )
       .Columns( column => {
                     column.For( p => p.Id)
                           .HeaderText( "ID" );
                     column.For( p => p.Name )
                           .HeaderText( "Name" );
                 } )
       .DataSourceUrl( Html.BuildUrlFromExpression<UserController>( c => c.GetUsers() ) )
       .Features( feature => {
                      feature.Paging().Type( OpType.Remote );
                      feature.Sorting().Type( OpType.Remote ).CaseSensitive( false );
                      feature.Filtering().Type( OpType.Remote );
                      feature.Resizing();
                      feature.Tooltips();
                  } )
       .Width( "100%" )
       .DataBind()
       .Render() )

User 对象的属性之一是可以为 null 的子实体。以下是架构的要点:

public class User
{
    public virtual int Id { get; set; }

    public virtual string Name { get; set; }

    public virtual Role Role { get; set; }
}

public class Role
{
    public virtual int Id { get; set; }

    public virtual string Description { get; set; }
}

网格运行良好,但我需要在列中显示角色子项的描述属性。这似乎应该很容易,但我无法弄清楚。例如,这不起作用,因为 Role 有时为 null(它显示网格的标题行和永久加载图标):

.Columns( column => {
              column.For( p => p.Id)
                    .HeaderText( "ID" );
              column.For( p => p.Name )
                    .HeaderText( "Name" );
              column.For( p => p.Role.Description )
                    .HeaderText( "Role" );
          } )

这也不起作用:

column.For( p => p.Role.Description )
      .HeaderText( "Role" )
      .Template( "${Site.Name}" );

【问题讨论】:

    标签: c# asp.net asp.net-mvc infragistics ignite-ui


    【解决方案1】:

    我在“Infragistics 网格可为空的属性”中寻找高低,但在搜索“Ignite UI 网格可为空的属性”之前没有找到任何东西。这有效:

    column.For( p => p.Role )
          .HeaderText( "Role" )
          .DataType( "object" )
          .FormatterFunction( "function(obj) { if (!obj) return 'None'; return obj.Description; }" );
    

    当这种情况发生时,我讨厌它。 (source)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-18
      • 1970-01-01
      • 1970-01-01
      • 2014-12-21
      相关资源
      最近更新 更多