Участник:VasilievVV/WikiAccess
Перейти к навигации
Перейти к поиску
WikiAccess — библиотека для доступа к Вики-интерфейсу. На данной странице находится её проект.
Концепция[править | править код]
При проектировании этой библиотеки применятся принциы KISS, чистого кода, а также принцип «каждый объект должен быть привязан к сущности, а не к интерфейсу».
Все объекты создаются с ссылкой на объект Wiki.
Недостатки[править | править код]
- Невозможно паралельно работать с двух аккаунтов
В IE7 при переключении страниц раздается звук- Требуется кэш для всевозможных сообщений:
- Системные сообщения (файл .messages)
- Пространства имён (файл .namespaces)
- Группы пользователей
Статус[править | править код]
На 16 мая 2007 эта библиотека уже имеет много функциональности (однако я должен признать, что большинство её является ненужной, и работает только с правами стюардов и девелоперов ;)).
Объекты[править | править код]
Все объекты располагаются в пространстве имён Wiki.Access.
Wiki.Access.Wiki[править | править код]
Этот класс предоставляет базовый доступ к Вики.
Примеры кода[править | править код]
Простой скрипт автозамен[править | править код]
Wiki wiki = new Wiki("http://ru.wikipedia.org/w", @"C:\WikiAccess_MessageCache");
foreach (string str in PageList.FromCategory(wiki, "Название категории", true).Pages)
{
Page pg = new Page(wiki, str);
string oldtext = pg.Text; string newtext = oldtext;
newtext = newtext
.Replace("[[Category:", "[[Категория:")
.Replace("[[Image:", "[[Изображение:");
if (oldtext != newtext)
{
pg.SetText(newtext, "Русификация", true);
Thread.Sleep(new TimeSpan(0, 0, 1));
}
}