通过linq访问SQL数据类型属性

时间:2012-09-25 17:06:40

标签: sql-server linq-to-sql data-binding

在我的sql数据库中,我有一个数字(3,2)字段,我想绑定到文本框。当Linq to SQL引入该字段时,它会将字段转换为其linq对象上的小数。是否可以访问数字精度和比例,以便在自定义控件的情况下我可以在验证或绑定中使用它们?最后我想阻止用户在UI端输入两个以上的小数点。

1 个答案:

答案 0 :(得分:0)

我发现你可以做这样的事情

        string val = String.Empty;

        Type t = obj.GetType();
        PropertyInfo prop = t.GetProperty(fieldName);
        object[] info = prop.GetCustomAttributes(typeof(ColumnAttribute), true);

        if (info.Length == 1)
        {
            ColumnAttribute ca = (ColumnAttribute)info[0];
            string attr = ca.DbType
                            //... parse attr to get the info you want
        }

        return val;

这不太理想,因为你必须解析一个字符串才能得到我正在寻找的东西。但它的确有效。