gpt4 book ai didi

tridion - 如何在 Tridion 代理的字段中插入超过 3400 字节的文本?

转载 作者:行者123 更新时间:2023-12-04 10:08:46 26 4
gpt4 key购买 nike

我有一个包含很多元数据字段的架构。我们希望能够通过 Tridion API 从代理中搜索基于该架构的组件,例如:

using Tridion.ContentDelivery.DynamicContent.Query;
private static Criteria getSearchCriteria(
string searchText,
params BrokerConstants.MetadataField[] fields)
var searchCriteria = new List<Criteria>();
foreach (var f in fields)
{
var mkcText = new CustomMetaKeyCriteria(f.Name);
var mvcText = new CustomMetaValueCriteria(
mkcText,
"%" + searchText + "%",
Criteria.Like);
searchCriteria.Add(mvcText);
}
return new OrCriteria(searchCriteria.ToArray());
}

到目前为止,这工作正常:用户可以输入一些搜索文本,我们通过代理 API 将搜索文本传递给 Tridion,而 Tridion 将与该搜索文本匹配的组件返回给我们。

但!如果我向任何组件的内容字段添加大量文本,Tridion 发布过程将在“部署”阶段失败:

Phase: Deployment Processing Phase failed, Could not deploy component [Component id=tcm:9-2617-16 title=xyz schema=tcm:9-2325-8], CustomMeta field, StringValue, is bigger than the supported size of 3400 bytes!



我尝试将代理数据库的 CUSTOM_META 表中的 KEY_STRING_VALUE 列从 nvarchar(3400) 更改为 nvarchar(MAX),但这似乎并没有解决问题。

我根本没有超出限制:“wc”告诉我我的文本中有 4037 个字节。大约 6000 左右听起来像是满足我需求的舒适上限。

有没有一种简单的方法可以增加我在该字段中允许的文本字节数?

最佳答案

没有支持的方式来完成您希望完成的工作。另外,请记住自定义元的实际目的是什么。在我看来,您通过在列中添加大量内容来滥用它。

无论如何,如果您真的想走那条路,那么您需要联系 Tridion 支持或访问 sdltridionworld (需要登录)并下载 CD_2011.1.1.83467(或任何包含 CD_2011.1.1.81125 的修补程序,CD_2011.1.1.83475 除外!!!)。修补程序更改的是它删除了在部署时完成的元数据大小的硬检查。换句话说,它允许您让数据库服务器决定是否允许您在该列中存储那么多内容,从而让您在腿上开枪。请知道更改数据库列是 不是 由 Tridion 支持。

希望这可以帮助。

关于tridion - 如何在 Tridion 代理的字段中插入超过 3400 字节的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14826452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com