C# 将Umbraco IContent转换为JSON

C# 将Umbraco IContent转换为JSON,c#,json,umbraco,umbraco7,C#,Json,Umbraco,Umbraco7,我甚至在发布时也可以通过侦听器处理来自Umbraco的IContent对象 public static IContent[] FaqEntities(this PublishEventArgs<IContent> publishEventArgs) { return publishEventArgs.PublishedEntities.Where(x => x.ContentType.Name == "FAQ").ToArray();

我甚至在发布时也可以通过侦听器处理来自Umbraco的
IContent
对象

public static IContent[] FaqEntities(this PublishEventArgs<IContent> publishEventArgs)
        {
            return publishEventArgs.PublishedEntities.Where(x => x.ContentType.Name == "FAQ").ToArray();
        }

一旦检索到IContent,是否有一种简单的方法将其转换为JSON?

我认为您应该创建类来定义所需的JSON,然后您可以选择新格式。比如:

public class Faq
{
     public int nodeId { get; set; }
     public string question { get; set; }
     public string answer { get; set; }
}

public class FaqCollection
{
     public IList<Faq> faqs { get; set; }
}
根据您的需要,您甚至不必在执行此操作之前转换为json

public class Faq
{
     public int nodeId { get; set; }
     public string question { get; set; }
     public string answer { get; set; }
}

public class FaqCollection
{
     public IList<Faq> faqs { get; set; }
}
var faqsCollection = new FaqCollection();
faqsCollection.faqs = faqEntities.Select(y => new Faq { nodeId = y.nodeId, question = y.question, answer = y.answer }).ToList();