我试图在传递动态视频ID的同时渲染出brightcove媒体播放器。 brightcoveData.Id是一个有效的guid,但我似乎无法正确传递参数,以便Rendering理解它。我从这个组件中得到一个错误,说"未选择媒体项。"
var embedMedia = new System.Collections.Specialized.NameValueCollection();
embedMedia.Add("playerId", "E7766078969C3AB892DD158E0E7230B9");
embedMedia.Add("width", "400");
embedMedia.Add("height", "300");
@Html.Sitecore().Rendering("/sitecore/layout/Renderings/Media Framework/Embed Media", new
{
DataSource = brightcoveData.Id,
Parameters = embedMedia
})
任何帮助将不胜感激。感谢。
答案 0 :(得分:8)
好的,在与Sitecore支持人员交谈后,我得到了答案:
@Html.Sitecore().Rendering("/sitecore/layout/Renderings/Media Framework/Embed Media", new
{
DataSource = brightcoveData.Id,
Parameters = "playerid=E7766078969C3AB892DD158E0E7230B9&height=300&width=400"
})
brightcoveData.Id只是一个guid字符串=" {XXXX -...- etc}"。 playerid是您正在使用的播放器的Sitecore项目ID。
这是最终代码的样子,效果很好!谢谢大家
答案 1 :(得分:0)
我不认为您可以使用这些参数覆盖默认属性。
Sitecore将解析这些参数并将其添加为KeyValuePair<string, object>
对象。您可以通过Rendering.Parameters
。
如果您不想设置自己的数据源和参数,则必须使用Sitecore中的演示详情并设置数据源< / strong>那里。