Документация для перегруженного конструктора для ArgumentNullException
, который принимает один строковый параметр, утверждает, что этот аргумент должен быть:
The name of the parameter that caused the exception.
В настоящий момент, если ваш код выдает исключение, вы не будете знать, какой аргумент был нулевым.
Рекомендую переписать на
if (str1 == null) throw new ArgumentNullException("str1");
if (str2 == null) throw new ArgumentNullException("str2");