我想在Tridion 2011中存在特定条件时停止发布.在Razor模板中,我尝试:
throw new Exception("Exceptional condition!");
Run Code Online (Sandbox Code Playgroud)
但是,在Template Builder中它表示"成功".
有任何想法吗?
在VBScript模板中,我们会执行Err.Raise,它会将错误返回到Publish Queue.
Tridion GUI Extension配置如何将名称映射到JS文件?例如,我正在使用Jaime的HelloWorld帖子和示例文件.最重要的部分是CommandSet部分.
<cfg:commandset id="HelloWorldCM.Interface">
<cfg:command name="HelloWorldCM" implementation="Extensions.HW"/>
<cfg:dependencies>
<cfg:dependency>HelloWorldCM.Commandset</cfg:dependency>
</cfg:dependencies>
</cfg:commandset>
Run Code Online (Sandbox Code Playgroud)
有人可以帮我理解以下属性以及它们如何映射到扩展的基础.js文件?
我已尝试在config和js文件中更改这些内容,但它们如何映射是一个谜.
如何在Tridion 2011 GUI扩展上下文菜单项中添加图标?
它是在主题或GUI扩展配置?
尺寸是16px吗?
我有一个带有表单和文本字段的Tab GUI扩展.我想将表单字段的值保存到ApplicatioData.我在想一个调用安圭拉方法的"更新"按钮.
是否有安圭拉方法来做到这一点?我没有在安圭拉看到任何方法.开始代码:
var c = $display.getItem();
var uri = c.getId();
Run Code Online (Sandbox Code Playgroud) 我正在使用Tridion TMS/WorldServer Connector将翻译发送到SDL.这工作正常.
但是,我还想发送评论以及文本,例如"这是一个标题,请保持30个字符"或"使用俚语,让这个声音很酷".这不是翻译.
我可以在为TMS/World Server生成的XML中添加注释字段值(Tridion中的正常Schema字段)并将其标记为"not for translation"吗?
我正在关注Signalr Wiki中的Hubs快速入门指南.我在RouteTable.Routes.MapHubs()行的Global.asax,Application_Start中收到错误.
名为"signalr.hubs"的路由已在路径集合中.路线名称必须是唯一的.参数名称:名称
也许这在1.0.1中不再需要了?它在1.0中运行良好.在NuGet的readme.txt中也提到我们需要MapHubs命令.
System.ArgumentException未被用户代码处理Message =名为'signalr.hubs'的路由已在路径集合中.路线名称必须是唯一的.参数名称:name Source = System.Web
ParamName = name StackTrace:位于System.Web.Routing.RouteCollectionExtensions.Add [T]的System.Web.Routing.RouteCollection.Add(String name,RouteBase item)处(RouteCollection routes,String name)在System.Web.Routing.SignalRRouteExtensions.MapHubs(RouteCollection路由,字符串名称,字符串路径,HubConfiguration)的System.Web.Routing.RouteCollectionExtensions.MapOwinPath(RouteCollection routes,String name,String pathBase,Action`1 startup)上的,T item)在System.Web.Routing.SignalRRouteExtensions.MapHubs上的System.Web.Routing.SignalRRouteExtensions.MapHubs(RouteCollection路由,字符串路径,HubConfiguration配置)处的System.Web.Routing.SignalRRouteExtensions.MapHubs(RouteCollection路由,HubConfiguration配置)处于System.Web.Routing.SignalRRouteExtensions.MapHubs( RouteCollection路由)位于C:\ RC\Code\Signalr\SignalrServer\SignalrServer\Global.asax.cs中的SignalrServer.Global.Application_Start(Object sender,EventArgs e):第18行InnerException:
我想在Anguilla框架中使用GetLocalizedItems方法.
我不知道如何创建新的过滤器并设置条件或用于成功和失败的内容.
在GUI中:
tridion.Web.UI.ContentManager.WhereUsed.GetListUsedItems(id, filter.conditions,
filter.columns, success, failure);
Run Code Online (Sandbox Code Playgroud)
此命名空间中的方法是否应由我们的扩展使用?
从另一个环境恢复Tridion CMS数据库后,我们无法从Broker中取消发布组件.如果我们发布到Broker,那么我们可以取消发布.我们希望将IsPublishedTo状态设置为新环境中可用的发布目标.
TOM API具有可用于页面和组件模板的SetPublishedTo方法,但不具有组件.
如何为组件设置PublishedStatus?是否可以使用UpdateXML或我们是否需要执行数据库黑魔法?
我需要在存在特定条件时停止发布页面,例如,如果页面名称包含使用事件系统的"一个".此外,其他页面应继续发布.
我想使用PublisherException而不是一般的异常.
问题是我不知道LocalizableMessage的resourceName.有任何想法吗?
if (item.Title.ToString().Contains("one"))
{
Localization.LocalizableMessage errResource = new Localization.LocalizableMessage("error");
throw new PublisherException(errResource, new Exception("Can't get there from here!"));
}
Run Code Online (Sandbox Code Playgroud) 我想使用Anguilla获取GUI扩展中的项目的WebDavURL属性.
我有以下代码但不返回WebDavURL:
selectedItem = selection.getItems()[0];
var item = $models.getItem(selectedItem);
var webDavUrl = item.getInfo().webDavUrl();
Run Code Online (Sandbox Code Playgroud) 如果我有一个像'tcm:1-23-8'这样的Tridion URI,我想用正则表达式得到23.
以下是有效的,但我知道有更好的方法.tcm:和'-8'总是在那里.更改的部分是1和23.
var schemaUri = $display.getItem().getId(); // tcm:1-23-8
var re = /tcm:\d-/gi; // = 23-8
var schemaIdWithItemType = schemaUri.replace(re, "");
re = /-8/gi;
var schemaId = schemaIdWithItemType.replace(re, "");
Run Code Online (Sandbox Code Playgroud) 我正在对数据可视化进行一些查询,并依赖GroupBy,Avg,Sum和类似函数从数据库中获取一个好的数据集.
我想使用与ServiceStack OrmLite类似的GroupBy.在ShippersExample页面上,我看到以下查询.有更简单或更好的方法吗?
例如,我有一个"位置"列,想要查找条目的前5个位置,并列出这些位置的次数.我只有1个表,所以不需要加入.
var rows = db.SqlList<ShipperTypeCount>(
"SELECT {0}, COUNT(*) AS Total
FROM Shippers
GROUP BY {0}
ORDER BY Total".Fmt("ShipperTypeId".SqlColumn()));
Run Code Online (Sandbox Code Playgroud)