Как создавать списки Markdown на C#

Библиотека Aspose.HTML for .NET – это автономное решение, позволяющее анализировать файлы Markdown и управлять ими без использования другого программного обеспечения. Вы можете создать документ Markdown с нуля, открыть из локального файла и управлять им, вставляя новые элементы, удаляя или редактируя содержимое существующих узлов. Markdown поддерживает упорядоченные (нумерованные) и неупорядоченные (маркированные) списки. В этой статье вы узнаете о добавлении списков в Markdown с помощью библиотеки C#. Используйте Aspose.Html.Toolkit.Markdown.Syntax и Aspose.Html.Toolkit.Markdown.Parser для обеспечения полного синтаксического анализа Markdown и управления синтаксическим деревом MD на основе спецификации GitHub Flavored Markdown (GFM).


Создать упорядоченный список Markdown на С#

Используя библиотеку C#, вы можете программно редактировать файлы MD – изменять структуру и содержимое документа. Давайте рассмотрим создание нового документа Markdown с нуля и добавление в него упорядоченного списка.

Код С# для создания упорядоченного списка Markdown

    // Create the MarkdownSyntaxTree
    var md = new MarkdownSyntaxTree(new Configuration());

    // Create a Markdown syntax factory
    var mdf = md.SyntaxFactory;

    // Create a new empty odered list node
    var orderedList = mdf.OrderedList();

    // Create and add to the odered list a li1 item with the marker “1”
    var li1 = mdf.OrderedListItem(1);
    orderedList.AppendChild(li1);

    // Create a paragraph with text content and add it to the li1 item
    var paragraph = mdf.Paragraph();

    var heading = mdf.AtxHeading("The first element in the Markdown ordered list is the level 3 heading.", 3);
    paragraph.AppendChild(heading);
    li1.AppendChild(paragraph);

    //Create and add to the odered list a li2 item with the marker “2”
    var li2 = mdf.OrderedListItem(2);
    orderedList.AppendChild(li2);

    // Create a strong emphasis with text content and add it to the li2 item
    var bold = mdf.Emphasis(Emphasis.Strong);

    bold.AppendChild(mdf.Text("The second item in the Markdown ordered list is in bold."));
    li2.AppendChild(bold);

    // Add orderedList to MD syntax tree
    md.AppendChild(orderedList);

    // Prepare a path for MD file saving 
    string savePath = Path.Combine(OutputDir, "output-odered-list.md");

    // Save MD file
    md.Save(savePath);



Шаги по созданию упорядоченного списка Markdown на C#

Вот несколько простых шагов для создания упорядоченного списка Markdown:

  1. Создайте MarkdownSyntaxTree с помощью конструктора MarkdownSyntaxTree().
  2. Используйте свойство SyntaxFactory, чтобы получить фабрику для создания синтаксического дерева Markdown.
  3. Создайте новый узел упорядоченного списка с помощью конструктора OderedList() в SyntaxFactory.
  4. Используйте конструктор OrderedListItem() для создания новых экземпляров класса ListItemSyntaxNode с маркером элемента упорядоченного списка.
  5. Вызовите метод AppendChild() класса MarkdownSyntaxNode, чтобы добавить упорядоченные элементы списка в узел orderedList.
  6. После того, как все элементы с их содержимым собраны в один элемент orderedList, добавьте его в синтаксическое дерево документа.

Создать неупорядоченный список Markdown на С#

В следующем примере кода C# показано, как добавить неупорядоченный список в файл MD:

Код С# для добавления неупорядоченного списка в файл MD

// Create the MarkdownSyntaxTree
    var md = new MarkdownSyntaxTree(new Configuration());

    // Create a Markdown syntax factoty
    var mdf = md.SyntaxFactory;

    // Create a new empty unodered list node
    var unorderedList = mdf.UnorderedList();

    // Create and add to the unodered list a li1 element with the marker “-”
    var li1 = mdf.UnorderedListItem("-");
    unorderedList.AppendChild(li1);

    // Create a paragraph with text content and add it to the li1 item:
    var paragraph = mdf.Paragraph();
    paragraph.AppendChild(mdf.Text("The first item of the unordered Markdown list."));
    li1.AppendChild(paragraph);

    // Create and add to the unodered list a li2 element with the marker “-”
    var li2 = mdf.UnorderedListItem("-");
    unorderedList.AppendChild(li2);

    // Create a paragraph with text content and add it to the li2 item:
    var paragraph2 = mdf.Paragraph();
    paragraph2.AppendChild(mdf.Text("The second item of the unordered Markdown list."));
    li2.AppendChild(paragraph2);

    // Add unorderedList to MD syntax tree
    md.AppendChild(unorderedList);

    // Prepare a path for MD file saving 
    string savePath = Path.Combine(OutputDir, "markdown-unodered-list.md");

    // Save MD file
    md.Save(savePath);

Документация

Чтобы узнать больше об Aspose.HTML API, посетите нашу документацию. Markdown – это простой язык разметки, который позволяет форматировать обычный текст. Статья документации Синтаксис Markdown содержит информацию об основных элементах Markdown, подробности и примеры синтаксиса Markdown.


Установка Aspose.HTML for .NET

Установите Aspose.HTML for .NET из NuGet с помощью .NET CLI:

dotnet add package Aspose.HTML

Также можно использовать интерфейс диспетчера пакетов NuGet или выполнить Install-Package Aspose.HTML в консоли диспетчера пакетов. Подробные инструкции приведены в руководстве по установке . Чтобы протестировать API без ограничений ознакомительной версии, запросите временную лицензию .

Системные Tребования

Наши API поддерживаются на всех основных платформах и операционных системах. Перед выполнением кода убедитесь, что в вашей системе выполнены следующие предварительные условия.

  • Microsoft Windows или совместимая ОС с платформами .NET Framework, .NET Core, Windows Azure, Mono или Xamarin.
  • Среда разработки, такая как Microsoft Visual Studio.
  • Aspose.HTML for .NET DLL, на который есть ссылка в вашем проекте – установите из NuGet с помощью кнопки «Загрузить» выше.