Изменение WatiN.Core dll для работы с фреймами и фреймами
Итак, это может быть полный вопрос n00b, но я использую библиотеку WatiN 2.1 с Visual Studio 2013, и я пытаюсь автоматизировать веб-страницу, основанную в основном на javascript. Я уже выполнил эту задачу, используя VBA, но я хотел повторить ее в C#. Веб-страница имеет несколько элементов AND, и некоторые необходимые поля содержатся на нижних уровнях каждого из них. В VBA я мог перемещаться по странице, просто делая что-то вроде этого:
ie.Document.frames("frameID1").Document.frames("frameID2").Document.getElementByID("target").Click
Эта строка кода будет работать независимо от того, были ли frameID1 или frameID2 кадрами или фреймами. Это не имело значения для VBA. Я попробовал аналогичный подход в C# с использованием WatiN, но похоже, что функция Frame в WatiN распознает только элементы фрейма и просто распознает элемент как простой HTML-элемент.
При этом, я прочитал вопрос об этом, найденный здесь, но именно здесь возникает мой квест. Они говорят, что решение состоит в том, чтобы изменить код для метода AllFramesProcessor, и это исправляет это. Но как именно вы получаете доступ и изменяете этот код? Этот код содержится в.dll, который я пытался изменить с помощью.NET Reflector. Я экспортировал исходный код, открыл его в Visual Studio, нашел код для изменения и сделал это, но когда я попытался построить новый выпуск, он выдал несколько ошибок. Любые предложения о том, как правильно изменить этот блок кода и получить версию WatiN, которая может обрабатывать элементы?