C# 未在Umbraco内容中填写图像src

C# 未在Umbraco内容中填写图像src,c#,umbraco,umbraco8,C#,Umbraco,Umbraco8,我们有一个带有Richtext编辑器的文档类型,并将图像放入文本中。 当我们查看Umbraco下的内容时,会显示图像,看起来很好 当Umbraco保存内容并省略src部分时,我想是为了确保当内容显示在不同的服务器/网站/域上时,它始终具有正确的域名。。。因此,它不会出现在数据库或索引中 问题是,当我们通过ContentService获取内容或检查图像链接不存在时,它只有数据udi: string mainString = content.Properties["main"].GetValue()

我们有一个带有Richtext编辑器的文档类型,并将图像放入文本中。 当我们查看Umbraco下的内容时,会显示图像,看起来很好

当Umbraco保存内容并省略src部分时,我想是为了确保当内容显示在不同的服务器/网站/域上时,它始终具有正确的域名。。。因此,它不会出现在数据库或索引中

问题是,当我们通过ContentService获取内容或检查图像链接不存在时,它只有数据udi:

string mainString = content.Properties["main"].GetValue()
mainString = TemplateUtilities.ParseInternalLinks(mainString, Current.UmbracoContext.UrlProvider);
mainString = TemplateUtilities.ResolveUrlsFromTextString(mainString);
mainString = TemplateUtilities.ResolveMediaFromTextString(mainString);

我们正在使用Umbraco 8.2.1

在深入研究Umbraco的源代码后,我找到了解决方案

TemplateUtilities具有基于数据udi插入到各种对象的链接的方法:

string mainString = content.Properties["main"].GetValue()
mainString = TemplateUtilities.ParseInternalLinks(mainString, Current.UmbracoContext.UrlProvider);
mainString = TemplateUtilities.ResolveUrlsFromTextString(mainString);
mainString = TemplateUtilities.ResolveMediaFromTextString(mainString);
IContentService cs = Services.ContentService;
IContent content = cs.GetById(ID);
string mainString = content.Properties["main"].GetValue()
???
string mainString = content.Properties["main"].GetValue()
mainString = TemplateUtilities.ParseInternalLinks(mainString, Current.UmbracoContext.UrlProvider);
mainString = TemplateUtilities.ResolveUrlsFromTextString(mainString);
mainString = TemplateUtilities.ResolveMediaFromTextString(mainString);