Проект выпуска после установки значения Richtext в списке блоков (Umbraco 16)C#

Место общения программистов C#
Ответить
Anonymous
 Проект выпуска после установки значения Richtext в списке блоков (Umbraco 16)

Сообщение Anonymous »

У меня работает Umbraco 16, и я после некоторой работы я смог программно опубликовать богатый текст в списке блоков в документе. Я начал с добавления чистого стартового комплекта, который оказал большую помощь, чтобы заставить CMS работать. Проблема, которая у меня есть, заключается в том, когда запускаю код ниже, и я перехожу к контенту, она отображает черновик в богатом тексту. Если я нажимаю «Создать» на богатом тексте, он исправит проблему. Я должен импортировать более 500 постов, и я не могу зайти в каждый, чтобы исправить их вручную. Любая помощь будет высоко оценена.var parentId = Guid.Parse(“8b97891b-bb88-4c50-827d-a458c3c2b7bb”);

var myValue = “Author bio test text Super Excited About it!”;

var dictionaryUdi = new List();

var contentUdi = Guid.NewGuid().ToString();

var blocklist = new Blocklist();

var values = new List {
new() {
editorAlias = “Umbraco.RichText”,
alias = “content”,
value = myValue } };

dictionaryUdi.Add(new Dictionary { { “contentKey”, contentUdi.ToString() } });

blocklist.layout = new BlockListUdi(dictionaryUdi);

blocklist.settingsData = ;

blocklist.contentData =
[ new ContentData { contentTypeKey = importContent.UmbBlockListContentKey,
key = contentUdi,
values = values } ];

var content = _contentService.Create(“Test Author”, parentId, “Author”);

content.SetValue(“title”, “my test title”);

content.SetValue(“metaDescription”, “my meta description”);

content.SetValue(“contentRows”, JsonConvert.SerializeObject(blocklist));

_contentService.Save(content);

_contentService.Publish(content, [“*”]);
< /code>
Я использую следующую модель: < /p>
public class Blocklist
{
public BlockListUdi layout { get; set; }

public List contentData { get; set; }

public List settingsData { get; set; }

}

public class BlockListUdi
{

[JsonProperty(“Umbraco.BlockList”)]
public List contentUdi { get; set; }

public BlockListUdi(List items)
{
this.contentUdi = items;
< /code>
}
} < /p>
public class ContentData
{
public string contentTypeKey { get; set; }

public string key { get; set; }

public List values { get; set; }

}

public class ValueRow
{
public string editorAlias { get; set; }

public object culture { get; set; }

public object segment { get; set; }

public string alias { get; set; }

public string value { get; set; }
}
< /code>
Спасибо за вашу помощь! < /p>
Я только что получил его работать. Я изменил модель на: < /p>
public class Blocklist
{
public BlockListUdi layout { get; set; }
public List contentData { get; set; }
public List settingsData { get; set; } = [];
public List expose { get; set; } = [];
< /code>
} < /p>
, а затем в контенте BlockList я добавил: < /p>
blocklist.settingsData = [
new Dictionary { { "contentKey", contentUdi.ToString() } }
];

blocklist.expose = [
new Dictionary { { "contentKey", contentUdi.ToString() } }
];


Подробнее здесь: https://stackoverflow.com/questions/797 ... umbraco-16
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»