为什么我的Tridion二进制链接在使用REL时不显示?
我正在生成一个Tridion二进制链接,如下所示:为什么我的Tridion二进制链接在使用REL时不显示?,tridion,tridion-2011,tridion-content-delivery,Tridion,Tridion 2011,Tridion Content Delivery,我正在生成一个Tridion二进制链接,如下所示: Razor TBB为二进制链接生成链接解析器语法 链路解析器TBB生成TCDL 输出将作为输出类型为REL的动态组件模板发布。发布目标指定ASP.NET 我在broker数据库的COMPONENT_PRESENTATIONS表中看到的输出如下: <tcdl:Link type="binary" origin="tcm:0-0-0" destination="tcm:34-669" templateURI="tcm:
<tcdl:Link type="binary" origin="tcm:0-0-0"
destination="tcm:34-669" templateURI="tcm:0-0-0"
linkAttributes="" textOnFail="true" addAnchor=""
variantId="">Document2</tcdl:Link>
Document2
因此,您至少希望看到文本“Document2”
如果我手工制作一个二进制链接控件
,它工作得很好,但是上面列出的TCDL没有生成可见的输出
可能出了什么问题?接下来我应该研究什么?我们注意到同样的行为,链接解析器TBB没有为二进制文件类型生成正确的大小写。它被生成为
而不是
(注意小写的b而不是大写的b,很难理解)。REL TCDLTagRender区分大小写,不使用小写类型:binary解析tcdl:link,您将在cd日志文件中看到警告消息(假设您将日志级别设置为warn或debug)
解决方法是通过引入一个新的TBB,将小写的binary
的输出替换为大写的binary
。我们将此作为TBB的一部分,用于解析任何多媒体链接(如pdf、doc等)的RTF字段二进制链接解析
在TBB中,您可以使用字符串将小写二进制替换为二进制,如下所示
string output=package.GetValue(package.OutputName);
output=output.Replace(“type=\“binary\”,“type=\“binary\”);
你好,多米尼克。当您发布到REL时,您应该不会在数据库中看到太多与该tcdl标记相关的输出。该标签的内容应该被忽略,您应该在数据库Hi@sea\u gull中看到。Ram Gonuguntla已经找到了解决方案。我在等他把答案贴在这里,这样我就可以相信他了。这看起来像是链接解析器TBB中的一个bug,它生成的TCDL的大小写不正确。正确…我可以看出类型是错误的。
"WARN LinkTagRenderer - Link type does not exist."