C# 如何在SharePoint页面上插入页眉

C# 如何在SharePoint页面上插入页眉,c#,sharepoint,csom,C#,Sharepoint,Csom,我有一个非常简单的要求,但当然,正如CSOM的情况一样,似乎真的很难实现任何目标。我确实有一个解决方案,但是现在网站模板已经改变了(在我的控制之外),没有任何东西可以工作了,我也不知道如何调试它 要求 向现有SharePoint页面添加简单标题 旧解决方案 这曾经非常有效。我输入了页面名称、web部件xml和区域的详细信息(我不知道我是如何发现这些信息的,仅仅插入一个带有代码的web部件似乎复杂得可笑……为什么?…) 当我现在尝试的时候,我得到了 指定的对象不属于列表 在2号ExecuteQue

我有一个非常简单的要求,但当然,正如CSOM的情况一样,似乎真的很难实现任何目标。我确实有一个解决方案,但是现在网站模板已经改变了(在我的控制之外),没有任何东西可以工作了,我也不知道如何调试它

要求

向现有SharePoint页面添加简单标题

旧解决方案

这曾经非常有效。我输入了页面名称、web部件xml和区域的详细信息(我不知道我是如何发现这些信息的,仅仅插入一个带有代码的web部件似乎复杂得可笑……为什么?…)

当我现在尝试的时候,我得到了

指定的对象不属于列表

在2号
ExecuteQuery()

我试过了,但我得到的只是

指定的对象不属于列表

再次。。。有人能给我建议吗


只需添加一个标题有多难?

检查以下解决方案:

1.您可以在当前网站页面中添加“?contents=1”,并删除使用CSOM代码添加它的自定义web部件

2.使用SharePoint designer打开网站页面,并在高级模式下进行编辑

3.在“Placeholder Main”控件下添加标题HTML代码和JavaScript代码

示例代码:

<div id="customHeader" style="height:20px;width:auto;background-color:green">Test</div>
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script type="text/javascript">
$(function () {
    $("#ms-designer-ribbon").before($("#customHeader"));
});
</script>
测试
$(函数(){
$(“#ms designer ribbon”)。之前($(“#customHeader”);
});
4.保存页面

如果您不能使用SharePoint designer,我们还可以使用脚本编辑器web部件/内容编辑器web部件以及一些HTML代码来实现它

如果您想使所有页面都具有自定义标题,我们可以在母版页中添加一些代码以使其正常工作

<div id="customHeader" style="height:20px;width:auto;background-color:green">Test</div>
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script type="text/javascript">
$(function () {
    $("#ms-designer-ribbon").before($("#customHeader"));
});
</script>