Что входит в прокрутку Вашей собственной Wiki с помощью c# и sql?

Я хотел бы понять, как Wiki работает, по крайней мере, от высокого уровня. То, когда пользователь сохраняет изменения, делает это, всегда вставляют новую строку в базу данных для что статья Wiki (10 изменений, 10 строк в базе данных).

10
задан Byron Sommardahl 19 February 2010 в 14:12
поделиться

7 ответов

Я согласен со всеми ответами. Обычно вики обрабатывают каждую правку как новую запись в базе данных.

Возможно, вам будет интересно ознакомиться с полной схемой базы данных MediaWiki, вики-движка, лежащего в основе Википедии.

Layout of the MediaWiki database diagram

Обратите внимание, что полный текст каждой ревизии хранится в поле MEDIUMBLOB в таблице text.

5
ответ дан 3 December 2019 в 21:59
поделиться

На самом деле я только что написал вики на C #. Одна вещь, которую я хотел бы добавить ко всем комментариям, - это то, что вы захотите убедиться, что можете сравнить две версии.Для этого на C # я настоятельно рекомендую реализовать C # библиотеки diff_match_patch от Google. Это довольно быстро, и его довольно легко расширить, если вам нужно больше в способах красивой печати или обработки структурированного текста, такого как HTML.

4
ответ дан 3 December 2019 в 21:59
поделиться

Проверьте множество ресурсов в Rexx Language Association ( www.rexxla.org ), особенно раздел ссылок .

-121--3338968-

если (MyStringVariable = = «LKOH») Debugger.Break ();

потребуется пространство имен System.Diagnostics

http://msdn.microsoft.com/en-us/library/system.diagnostics.debugger.break.aspx

-121--2230454-

Да. В противном случае невозможно будет увидеть полную историю страниц, что ожидается от реализации Wiki.

2
ответ дан 3 December 2019 в 21:59
поделиться

Каждая запись в вики - это новая запись в базе данных. Таким образом можно отслеживать изменения. Все дело в сообществе и отслеживании. За кулисами база данных хранит время даты, сделанные изменения и т.д.

3
ответ дан 3 December 2019 в 21:59
поделиться

Можно попробовать с помощью

CONFIG += dll
QT     -= gui core
LIBS   -= -lQtGui -lQtCore
-121--2959376-

Если требуется указать способ форматирования чисел, необходимо использовать конструктор DecimalFormat. Если вы хотите, чтобы «пути большинство чисел были представлены в моем текущем языковом стандарте», то используйте экземпляр NumberFormat по умолчанию.

-121--3690399-

Возможно, вы захотите проверить, можно ли использовать механизм управления версиями для текстовых частей (Пользователям и т.д. все еще нужна база данных), поскольку большинство систем управления версиями имеют все необходимые функции (история, различия, записи журнала для изменений,...), что сэкономит вам много работы.

0
ответ дан 3 December 2019 в 21:59
поделиться

Вот блог разработчиков TWiki, который может дать вам некоторую полезную информацию. http://twiki.org/cgi-bin/view/Blog/WebHome?category=Development .

Является ли Sql требованием проекта? В настоящее время NoSql претерпевает большие изменения, и вики, кажется, прекрасно вписываются в базу данных хранилища документов. Некоторую информацию об этом можно найти здесь http://nosql-database.org/ .

Реализация Codeplex находится на http://wikiplex.codeplex.com/ . Это из другого сообщения на stackoverflow asp.net mvc wiki .

1
ответ дан 3 December 2019 в 21:59
поделиться

Да.

...

Кажется кратковременным. Скажем так, вам нужно сохранить исходную статью, а затем подробности о каждом изменении. Таким образом, у вас может быть таблица статей и таблица изменений. Таким образом, вы можете вернуться в любое предыдущее состояние.

Конечно, дизайн таблиц, логика удаления исправленного текста из оригинала и его отдельного хранения довольно сложны.

1
ответ дан 3 December 2019 в 21:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: