Я не уверен, правильно ли я подхожу к этому, но я очень открыт и признателен за любые предложения.
Я строю диаграмму данных в базе данных SQL.
На диаграмме есть «Возраст» и «Процентиль», или это два поля, которые меня больше всего беспокоят.
У меня есть раздел конфигурации в моем файле web.config, который называется «Процентили». Это сделано для того, чтобы отображаемые процентили можно было определить в этом разделе конфигурации. Например:
<percentiles>
<add percentile="P50" visible="true">
<add percentile="P75" visible="true">
<add percentile="P85" visible="false">
<add percentile="P95" visible="true">
...
</percentiles>
Я проанализирую список процентилей и хотел бы либо отфильтровать свой набор данных, либо сгенерировать свой запрос на основе этого списка. Процентили хранятся в виде столбцов в базе данных. Так, например, я хочу, чтобы мой запрос выглядел так на основе этой конфигурации.
SELECT P50, P75, P95 FROM MyData
Теперь я полагаю, что могу просто выполнить SELECT * и удалить эти столбцы из моего набора данных или просто не добавлять их как «серии» в свою диаграмму. Тем не менее, я начинающий разработчик, стремящийся улучшить то, как я делаю вещи. По моему небольшому опыту, захват всех данных (хотя и небольшого количества) не является хорошей практикой.
Итак, вот где я прихожу к SQLDataAdapter. Можно ли построить мой запрос с помощью кода, чтобы включить только те столбцы, которые я хочу? Псевдокод, который мне интересно, возможен ли примерно так:
foreach(Percentile p in PercentileConfiguration)
{
myDataAdapter.Select.Columns.Add(p.Percentile);
}
Хороший ли это подход? Любые и все предложения очень ценятся! Спасибо!