Я пишу создателю документа с помощью текстового редактора с тегами-заполнителями ([[tagname]]).Мне нужно иметь возможность отправлять текст HTML читателю, который найдет каждый заполнитель и заменит его текстом ответа от вызова API.
У меня есть служба чтения, принимающая текст HTML, и я попытался разделить (""), чтобы отделить каждое слово, пропустив слово через цикл for и вызвав метод расширения службы .Between на ("[[","]] ") чтобы найти заполнители.Затем я делаю переключение на заполнителях, которые он находит, и вызываю методы в службе чтения для выполнения вызовов API.Проблема в том, что конечным результатом является пустая строка.Я не уверен, что мне не хватает.
public string ReadForm(FormViewModel formModel)
{
var form = "";
var formText = formModel.FormText;
formText.Split(" ");
for (int i = 0; i < formText.Length; i++)
{
var formTextIndex = formText[i].ToString();
var formTagItem = formTextIndex.Between("[[", "]]");
if (formTagItem.ToString() != null)
{
switch (formTagItem)
{
case "placeholder1":
formTagItem = GetItems1(formModel.ID);
form += $"{formTagItem} ";
break;
case "placeholder2":
formTagItem = GetItems2(formModel.ID);
form += $"{formTagItem} ";
break;
case "placeholder3":
formTagItem = GetItems3(formModel.ID);
form += $"{formTagItem} ";
break;
case "placeholder4":
formTagItem = GetItems4(formModel.ID);
form += $"{formTagItem} ";
break;
default:
form += $"{formTagItem} ";
break;
}
}
else
{
form += $"{formText[i]} ";
}
}
return form;
}
Мой ожидаемый результат для формы будет то, что заполнители будут заменены возвращенными значениями, а затем будут заменены в тексте HTML.