Вы отладили код?Вы уверены, что вторая строка возвращает значение, отличное от -1?Если обратная косая черта в строке не обнаружена, LastIndexOf
вернет -1, что является недопустимым индексом, который может использоваться Substring
, и, таким образом, будет выдана ошибка «индекс вне границ».
Более безопасный метод - извлечь имя файла, используя методы, определенные в классе Path.Но имейте в виду, что «имя проекта» не обязательно совпадает с именем сборки.