如果自定义动作以编程方式设置,则如何设置动作url

本文关键字:设置 何设置 url 编程 方式 如果 自定义 | 更新日期: 2023-09-27 18:15:25

当我从xml中使用正常的自定义操作时,它有:

<UrlAction Url="~remoteAppUrl/Pages/Default.aspx?{StandardTokens}&amp;SPListItemId={ItemId}&amp;SPListId={ListId}&amp;SPItemUrl={ItemUrl}" />

和它的工作正常,但当我使用

Microsoft.SharePoint.Client.UserCustomAction _customAction = web.UserCustomActions.Add();
_customAction.RegistrationType = UserCustomActionRegistrationType.ContentType;
_customAction.RegistrationId = _guidOfCreatedCT;
_customAction.Location = "EditControlBlock";
_customAction.Sequence = 450;
_customAction.Title = "TEST";
string rrr =AppRelativeVirtualPath.ToString();
_customAction.Url = "~remoteAppUrl/Pages/Default.aspx?{StandardTokens}&amp;SPListItemId={ItemId}&amp;SPListId={ListId}&amp;SPItemUrl={ItemUrl}";
_customAction.Update();
clientContext.ExecuteQuery();

这个url不工作。我不知道如何格式化这一个,我尝试了一切,仍然有任何想法。有人能帮我吗?

如果自定义动作以编程方式设置,则如何设置动作url

您只需要&amp;来替换任何XML结构中的&,但是您不需要在后面的代码中使用&amp;

简单地尝试使用http://或https://在您的自定义url前面。否则,SharePoint会认为该操作url在SharePoint内,因此它会自动生成一个站点相对url。