This is a public, read-only report. Striff reads this repository's docs, turns each sentence that makes a claim about the code into a rule, and checks the rule against the code on the default branch. How this works
Tenant and site collection app managers provide some common app operations like GetAvailable, Add, Deploy, Install, etc. These operations are available for both tenant and site collection app managers and are listed below.
AppManager has a GetAvailable method
HoldsPR #1819 · Oct 2
Read Oct 3
Tenant and site collection app managers provide some common app operations like GetAvailable, Add, Deploy, Install, etc. These operations are available for both tenant and site collection app managers and are listed below.
AppManager has an Add method
HoldsPR #1819 · Oct 2
Read Oct 3
Tenant and site collection app managers provide some common app operations like GetAvailable, Add, Deploy, Install, etc. These operations are available for both tenant and site collection app managers and are listed below.
AppManager has a Deploy method
HoldsPR #1819 · Oct 2
Read Oct 3
Tenant and site collection app managers provide some common app operations like GetAvailable, Add, Deploy, Install, etc. These operations are available for both tenant and site collection app managers and are listed below.
AppManager has an Install method
HoldsPR #1819 · Oct 2
Read Oct 3
To upgrade the app on the specific site you need to call the Upgrade method:
AppManager has an Upgrade method
Holds
Read Oct 3
To uninstall the app from the specific site you need to call the Uninstall method:
AppManager has an Uninstall method
Holds
Read Oct 3
If you don't want your app to be available for sites, you should call Retract.
AppManager has Retract
Holds
Read Oct 3
To completely remove the app from the app catalog you should call the Remove method:
AppManager has a Remove method
Holds
Read Oct 3
The Enable2 and Disable2 operations can be found on the ServicePrincipal object:
ServicePrincipal has an Enable2 method
Holds
Read Oct 3
The Enable2 and Disable2 operations can be found on the ServicePrincipal object:
ServicePrincipal has a Disable2 method
Holds
Read Oct 3
in this case this is a PnPContext which was obtained via the PnPContextFactory as explained in the [overview article](readme.md) and show below:
PnPContextFactory depends on PnPContext
Holds
Read Oct 3
in this case this is a PnPContext which was obtained via the PnPContextFactory as explained in the [overview article](readme.md) and show below:
PnPContextFactory depends on PnPContext
Holds
Read Oct 3
calling GetChanges on an IList will only return changes for that particular list.
IList has GetChanges
Holds
Read Oct 3
In PnP Core SDK files are represented via an [IFile interface](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IFile.html).
IFile is a contract
Holds
Read Oct 3
If you have an IListItem you can load the connected file via File property:
IListItem has File
Holds
Read Oct 3
You can read this property bag, provided via the [IFile Properties property](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IFile.html#collapsible-PnP_Core_Model_SharePoint_IFile_Properties), and add new key/value pairs to it.
IFile has Properties
Holds
Read Oct 3
To rename a file you can either use the Rename methods or use the MoveTo methods.
IFile has a Rename method
Holds
Read Oct 3
To rename a file you can either use the Rename methods or use the MoveTo methods.
IFile has a MoveTo method
Holds
Read Oct 3
See the [EnableVersioning property on the IList interface](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IList.html#PnP_Core_Model_SharePoint_IList_EnableVersioning).
IList has EnableVersioning
HoldsPR #1819 · Oct 2
Read Oct 3
See the [ForceCheckout property on the IList interface](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IList.html#collapsible-PnP_Core_Model_SharePoint_IList_ForceCheckout).
IList has ForceCheckout
HoldsPR #1819 · Oct 2
Read Oct 3
Deleting a file is done using the typical Delete methods like [DeleteAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.IDataModelDelete.html#PnP_Core_Model_IDataModelDelete_DeleteAsync), recycling is done via [RecycleAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IFile.html#PnP_Core_Model_SharePoint_IFile_RecycleAsync).
IFile has a RecycleAsync method
HoldsPR #1819 · Oct 2
Read Oct 3
Deleting a file is done using the typical Delete methods like [DeleteAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.IDataModelDelete.html#PnP_Core_Model_IDataModelDelete_DeleteAsync), recycling is done via [RecycleAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IFile.html#PnP_Core_Model_SharePoint_IFile_RecycleAsync).
IFile has a DeleteAsync method
Holds
Read Oct 3
Each file has an Author property (the one who created the file), an Editor property (the one who last changed the file), a Created property (when was the file added) and a Modified property (when was the file changed).
IFile has Author
Holds
Read Oct 3
> [!Note] > You can also opt for an asynchronous bulk file/folder copy/move via the CreateCopyJobs methods on ISite.
ISite has a CreateCopyJobs method
HoldsPR #1819 · Oct 2
Read Oct 3
Some files can be transformed into another format by calling one of the ConvertTo methods.
IFile has a ConvertTo method
Holds
Read Oct 3
> [!Note] > Loading the VroomDriveID and VroomItemID when you load the file to convert optimizes performance, these properties will be fetched if not present.
IFile has VroomDriveID
Holds
Read Oct 3
> [!Note] > Loading the VroomDriveID and VroomItemID when you load the file to convert optimizes performance, these properties will be fetched if not present.
IFile has VroomItemID
Holds
Read Oct 3
Once you've an [IFileVersion](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IFileVersion.html) you can also download that specific version of the file by using one of the GetContent methods as shown in the example.
IFileVersion has a GetContent method
Holds
Read Oct 3
Loading file versions can be done by requesting the [Versions property](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IFile.html#PnP_Core_Model_SharePoint_IFile_Versions) of the file.
IFile has Versions
Holds
Read Oct 3
See the [EnableVersioning](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IList.html#PnP_Core_Model_SharePoint_IList_EnableVersioning) and [EnableMinorVersions](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IList.html#PnP_Core_Model_SharePoint_IList_EnableMinorVersions) properties on the IList interface.
IList has EnableMinorVersions
Holds
Read Oct 3
Using one of the GetAnalytics methods on IFile gives you back the file analytics for all time, the last seven days or for a custom interval of your choice.
IFile has a GetAnalytics method
HoldsPR #1819 · Oct 2
Read Oct 3
Using on of the GetPreview methods allows you to obtain a short-lived embeddable URL for a file in order to render a temporary preview.
IFile has a GetPreview method
Holds
Read Oct 3
Use the [InformationRightsManagementSettings](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IFile.html#PnP_Core_Model_SharePoint_IFile_InformationRightsManagementSettings) property to read the file's IRM settings.
IFile has InformationRightsManagementSettings
Holds
Read Oct 3
>[!Note] > The library holding files you want to protect need to be first setup for IRM by enabling IRM on it via the [IrmEnabled property](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IList.html#collapsible-PnP_Core_Model_SharePoint_IList_IrmEnabled).
IList has IrmEnabled
HoldsPR #1819 · Oct 2
Read Oct 3
The [LoadItemsByCamlQueryViaCsom methods](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IList.html) run the same CAML query through the CSOM List.GetItems(CamlQuery) method instead, which does return them.
IList has a LoadItemsByCamlQueryViaCsom method
Holds
Read Oct 3
Projected fields are returned as an [IFieldLookupValue](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IFieldLookupValue.html), where LookupValue holds the value coming from the joined list.
IFieldLookupValue has LookupValue
Holds
Read Oct 3
Add a RowLimit with Paged='TRUE' to the CAML query and the returned PagingInfo tells you how to request the next page.
CamlQueryOptions has PagingInfo
Holds
Read Oct 3
When you add list items you quite often need to add multiple items and the best way to do that is using the Batch methods (e.g. [AddBatchAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IListItemCollection.html#PnP_Core_Model_SharePoint_IListItemCollection_AddBatchAsync_Dictionary_System_String_System_Object__)), the lesser server roundtrips the faster your code will be.
IListItemCollection has an AddBatchAsync method
Holds
Read Oct 3
Updating a list item comes down to updating the field values followed by calling an [IListItem](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IListItem.html) Update method such as [UpdateAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.IDataModelUpdate.html#PnP_Core_Model_IDataModelUpdate_UpdateAsync).
IListItem has an UpdateAsync method
Holds
Read Oct 3
SystemUpdate, SystemUpdateAsync | Updates the item without creating a new version and without updating the modified and editor list item fields UpdateOverWriteVersion, UpdateOverWriteVersionAsync | Updates the item without creating a new version and the modified and editor list item fields will be updated
IListItem has SystemUpdate
Holds
Read Oct 3
SystemUpdate, SystemUpdateAsync | Updates the item without creating a new version and without updating the modified and editor list item fields UpdateOverWriteVersion, UpdateOverWriteVersionAsync | Updates the item without creating a new version and the modified and editor list item fields will be updated
IListItem has SystemUpdateAsync
Holds
Read Oct 3
Once that's done use one of the AddListFolder methods to add a folder.
IList has an AddListFolder method
Holds
Read Oct 3
You can move a list item to another folder inside it's list using one of the MoveTo methods:
IListItem has a MoveTo method
Holds
Read Oct 3
You can use the GetChanges methods on an IListItem to list all the changes.
IListItem has a GetChanges method
Holds
Read Oct 3
If you want to enumerate these versions you need to first load the Versions property:
IListItem has Versions
Holds
Read Oct 3
If you have an IListItem you can load the connected file via File property:
IListItem has File
Holds
Read Oct 3
To access that file version you need to load the FileVersion property on the IListItemVersion instance.
IListItemVersion has FileVersion
Holds
Read Oct 3
Left alone they point at the sites the template came from, so set them in ApplyConfiguration.Parameters to apply the template as a copy.
ApplyConfiguration has Parameters
Holds
Read Oct 3
Once that's done you can obtain a PnPContext from the PnPContextFactory and start using the library.
PnPContextFactory depends on PnPContext
Holds
Read Oct 3
For more fine grained control over the setup of the internally used SharePointRestClient and MicrosoftGraphClient used in PnPContext, there are optional actions to enable configuring the IHttpClientBuilder of each in the AddPnPCore extension method.
PnPContext depends on SharePointRestClient
Holds
Read Oct 3
For more fine grained control over the setup of the internally used SharePointRestClient and MicrosoftGraphClient used in PnPContext, there are optional actions to enable configuring the IHttpClientBuilder of each in the AddPnPCore extension method.
PnPContext depends on MicrosoftGraphClient
Holds
Read Oct 3
Note that to share the contents of a complete library you can use the IList.RootFolder property as sharing target
IList has RootFolder
Holds
Read Oct 3
To verify if a site is a Syntex Content Center site you can use the [IsSyntexContentCenterAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IWeb.html?q=IsSyntexContentCenterAsync) method on your web.
IWeb has an IsSyntexContentCenterAsync method
Holds
Read Oct 3
When you want to work with a SharePoint Syntex Content Center site you need to first load it, this can be done using the [AsSyntexContentCenterAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IWeb.html#collapsible-PnP_Core_Model_SharePoint_IWeb_AsSyntexContentCenterAsync) method:
IWeb has an AsSyntexContentCenterAsync method
Holds
Read Oct 3
If you want to know to which libraries a Syntex model was deployed then you can use the [GetModelPublicationsAsync](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.ISyntexModel.html#collapsible-PnP_Core_Model_SharePoint_ISyntexModel_GetModelPublicationsAsync) method to get a list of libraries to which the model was published.
ISyntexModel has a GetModelPublicationsAsync method
Holds
Read Oct 3
Previous chapter showed how you can trigger this for a single file, but you can also classify and extract all files in a library using the ClassifyAndExtractAsync method on the IList.
IList has a ClassifyAndExtractAsync method
Holds
Read Oct 3
Events is a collection part of the ITeam interface, so when you get a team, you can include the events on the request.
ITeam has Events
Holds
Read Oct 3
To unfurl a received link you simply call one of the UnfurlLink methods on IWeb and you'll get back a populated [IUnfurledResource](https://pnp.github.io/pnpcore/api/PnP.Core.Model.SharePoint.IUnfurledResource.html) instance:
IWeb has an UnfurlLink method
HoldsPR #1819 · Oct 2
Read Oct 3
To verify if the site collection you're using is a home site you can use one of the IsHomeSite methods on ISite:
ISite has an IsHomeSite method
Holds
Read Oct 3
To read the Microsoft Viva Connections dashboard you will need to use one of the GetVivaDashboard methods on IWeb:
IWeb has a GetVivaDashboard method
Holds
Read Oct 3
To add an ACE to the dashboard you first need to instantiate an AdaptiveCardExtension or a class inheriting from that one (e.g. CardDesignerACE, AssignedTasksACE or TeamsACE).
CardDesignerACE extends AdaptiveCardExtension
Holds
Read Oct 3
To add an ACE to the dashboard you first need to instantiate an AdaptiveCardExtension or a class inheriting from that one (e.g. CardDesignerACE, AssignedTasksACE or TeamsACE).
AssignedTasksACE extends AdaptiveCardExtension
Holds
Read Oct 3
To add an ACE to the dashboard you first need to instantiate an AdaptiveCardExtension or a class inheriting from that one (e.g. CardDesignerACE, AssignedTasksACE or TeamsACE).
TeamsACE extends AdaptiveCardExtension
Holds
Read Oct 3
Once the ACE has been created and configured it can be added to the dashboard via an AddACE method and finally the dashboard changes are persisted via one of the Save methods.
IVivaDashboard has an AddACE method
Holds
Read Oct 3
Once the ACE has been created and configured it can be added to the dashboard via an AddACE method and finally the dashboard changes are persisted via one of the Save methods.
IVivaDashboard has a Save method
Holds
Read Oct 3
To remove an ACE from a dashboard simply use the RemoveACE method providing the ACE instance id as key and then save the dashboard again.
IVivaDashboard has a RemoveACE method
Holds
Read Oct 3
You can also update existing ACEs by using the UpdateACE method followed by saving the dashboard changes again.
IVivaDashboard has an UpdateACE method
Holds
67 rules from 12 docs
See these where the change is. The browser extension puts a pull request's doc findings, and a diagram of what it changed, on the GitHub page itself, so the code and what your docs say about it are side by side.