如何解决DataTable列名称包括方括号[name]
| 将名为\“ [名称] version \”的列添加到DataGrid时遇到问题。如果我有类似\“ [name] \”或\“ version [name] \”之类的内容,则转义,统一编码或加倍所有工作。仅在右方括号后有字符时才出现问题。 \“ [[[name] version] \”也可以,但是不是我所需要的。 我正在使用WPF和C#,这行代码将DataTable绑定到DataGrid。datagrid1.ItemsSource = dataTable1.defaultview;
我收到的错误是:
\“ PropertyPath \'语法中的语法错误
\“ Binding.Path \'[名称] \'中的错误...
\'版\'\”,\'\”。
解决方法
SQL Server允许在列名的周围使用方括号或双引号...您可以改用双引号吗?
,我刚刚编写了一个辅助函数,该函数更改ColumnName属性以删除特殊字符,例如[]和空格,而我只是将这些字符留在Caption属性中。因此,然后将Caption绑定到列标题,将ColumnName绑定到DisplayMemberBinding。
,您需要做的只是逃脱右方括号。
看到:
var ds = new System.Data.DataSet();
var dt = ds.Tables.Add();
dt.Columns.Add(\"[a[b]c\",typeof(decimal));
dt.Rows.Add(1);
dt.Rows.Add(2);
dt.Rows.Add(3);
dt.Select(\"[[a[b\\\\]c]=3\").Length.ShouldBe(1);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。