Какой компаратор использует DataTable.Compute? - PullRequest
0 голосов
/ 13 февраля 2019

Если я реализую следующее:

var maxValue = dataTable.Compute("Max(columnName)");

, то, вероятно, тип maxValue будет типом данных столбца columnName в dataTable (или будет ??).Но какой компаратор использует выражение Max и какие типы данных поддерживаются?Если значения в столбце не могут быть сопоставлены, то Max не может быть оценен, и, вероятно, будет сгенерировано исключение.Достаточно ли убедиться, что тип данных столбца реализует IComparable, таким образом:

if (typeof(IComparable).IsAssignableFrom(dataTable.Columns[columnName].DataType))
...