【问题标题】:How can I set ConvertEmptyStringToNull in DevExpress MVC GridView control?如何在 DevExpress MVC GridView 控件中设置 ConvertEmptyStringToNull?
【发布时间】:2013-08-20 12:00:52
【问题描述】:

我认为我需要将一些 ConvertEmptyStringToNull 属性设置为 false 以摆脱脑死的 UpdateModel 行为,该行为将已经设置为空字符串的字段转换为空值,这会导致我的数据库更新失败,但是我在 DevExpress MVC Gridview 的任何地方都找不到这个属性。有人知道怎么找到吗?

我已经尝试在 Application_Start 中覆盖以下内容

ModelBinders.Binders.DefaultBinder = new DevExpress.Web.Mvc.DevExpressEditorsBinder();

和设置

bindingContext.ModelMetadata.ConvertEmptyStringToNull = false;

那里,但那不起作用。

感谢您的任何想法!

【问题讨论】:

    标签: asp.net-mvc devexpress updatemodel


    【解决方案1】:

    对于我的目的,以下内容可以,因为我至少不必单独设置每个此类属性,但强烈认为默认情况下不应更改用户数据。我向 DevExpress 的人提出了建议,应该有更简单的方法来覆盖字段、网格和全局级别的这种行为。这是我的临时解决方案:

        settings.DataBound = (sender, e) =>
        {
            // turn off brain dead conversion of user data empty strings to null
            var lGrid = sender as MVCxGridView;
            foreach (var lCol in lGrid.Columns)
            {
                if (lCol is GridViewDataColumn)
                {
                    GridViewDataColumn lDataCol = lCol as GridViewDataColumn;
                    TextBoxProperties tb = lDataCol.PropertiesEdit as TextBoxProperties;
                    if (tb != null)
                        tb.ConvertEmptyStringToNull = false;
                }
            }
        };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-23
      • 1970-01-01
      • 2012-07-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多