Advertisements

Office 365 – PnP PowerShell – The object is used in the context different from the one associated with the object

Get Field names from a list

Today I tried to load the Fields from a list using PnP PowerShell and CSOM.

[code lang=text]
$ctx = Get-PnPContext

$list = Get-PnPList -Web $web -Identity $listName

$ctx.Load($list.Fields)
$ctx.ExecuteQuery()
[/code]

This quite quickly resulted in :

Exception calling “Load” with “1” argument(s): “The object is used in the context different from the one associated with the object.”
At line:1 char:1
+ $web.Context.Load($list.Fields)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : InvalidOperationException

Ok, maybe I need to use my $web.Context

[code lang=text]
$list = Get-PnPList -Web $web -Identity $listName

$web.Context.Load($list.Fields)
$web.Context.ExecuteQuery()
[/code]

No, the same error still occurs.

Hmm, so the $list object has its own web  (ParentWeb) object

[code lang=text]
$list = Get-PnPList -Web $web -Identity $listName

$list.ParentWeb.Context.Load($list.Fields)
$list.ParentWeb.Context.ExecuteQuery()
[/code]

and now I can get to my $list.Fields.

 

See Also

The object is used in the context different from the one associated with the object.

 

Advertisements

One thought on “Office 365 – PnP PowerShell – The object is used in the context different from the one associated with the object

  1. Thank you sir!
    I can use the same technique here for a file I have just restored from the RecycleBin

    $f = Get-PnPFolderItem -FolderSiteRelativeUrl “Documents/GDPR/test” -ItemName DeleteMe1.docx

    $f.Context.Load($f.ListItemAllFields)
    $f.Context.ExecuteQuery()
    $f.ListItemAllFields

    Catch you next time I am at the London PowerPlatform meet

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: