答案 0 :(得分:2)
看起来客户端对象模型中的站点徽标没有挂钩,就像常规对象模型中那样。 (site.RootWeb.SiteLogoUrl = pictureUrl;
)
答案 1 :(得分:0)
我找不到使用CSOM的方法,但您可以使用事件接收器创建一个新的网站集范围(对于SharePoint Online)功能并将其部署为解决方案。它对我有用,并保存我手动更新380个网站。我使用FeatureActivated方法以递归方式在网站集的根网站和所有子网站上设置徽标。这是代码:
public class Feature1EventReceiver : SPFeatureReceiver
{
public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
SPSite site = properties.Feature.Parent as SPSite;
if (site != null)
{
SPWeb web = site.RootWeb;
SetLogo(web);
}
}
private void SetLogo(SPWeb web) {
web.SiteLogoUrl = "/SiteAssets/logo.png";
web.Update();
foreach (SPWeb subweb in web.Webs)
{
SetLogo(subweb);
}
}
}