在Dreamweaver模板中访问包变量时出现问题

Vin*_*ant 2 dwt tridion tridion-2011

我在访问页面模板的DWT中的包变量时遇到了问题.

我有一个4 TBB的复合页面模板如下:

1)常量TBB - 该TBB将组件的所有值(嵌入式多值组件)读取为键值对,并将它们推送到包中.例如:

Item item = this._package.CreateStringItem(contentType, "test");
this._package.PushItem("key", item);
Run Code Online (Sandbox Code Playgroud)

2)页面模板的C#DLL - 包含页面模板的逻辑

3)页面模板的DWT - 此处输出所有包变量.

4)默认完成操作

我面临的问题如下:

在我的DWT中,我想比较Component Component模板的元数据和Constant TBB中设置的包变量.

我使用的语法是:

<!-- TemplateBeginIf cond="ComponentTemplate.Metadata.section_name = key" -->
Run Code Online (Sandbox Code Playgroud)

其中key是在常量TBB中设置的包名称,其值为"test"

但不知何故,这个包变量"key"给出的值为0而不是测试.

有人能让我知道我哪里错了.

Pau*_*ell 6

您应该通过替换来指定要添加到包中的项目类型:

Item item = this._package.CreateStringItem(contentType, "test");
Run Code Online (Sandbox Code Playgroud)

Item item = this._package.CreateStringItem(contentType.Text, "test");
Run Code Online (Sandbox Code Playgroud)

您还应该使用确认变量正确传递给DWT

@@test@@
Run Code Online (Sandbox Code Playgroud)

在条件之外.这将显示您要与之比较的值.