string first = pr.StringResult.ToUpper();
...
string second = pr.StringResult.ToUpper();
...
string merged = pr.StringResult.ToUpper();
Помнится читал в какой-то книге (кажется у Стровструпа) о том, что существуют языки, в которых некоторым строчным буквам нет заглавного соответствия. В виду этого автор рекомендовал приводить строки к нижнему регистру, а не к верхнему, дабы код был более универсальным.
Мы видим, что мы получается комбинированный набор атрибутов - с повторяющимися именами - в полученном блоке... Мы могли бы, конечно, отфильтровать любые атрибуты, чтобы они не повторялись дважды, что может быть обязательным требованием.
Это не "
может быть", но всегда будет обязательным требованием, иначе такой блок никому не нужен будет (равно как и код, создающий такие блоки). Соответственно, следовало не лениться, "
оставляя читателям для экспериментов", но раз уж показывать пример, то полностью завершённый, а не наполовину сделанный.