pnp / pnpcore

The PnP Core SDK is a modern .NET SDK designed to work for Microsoft 365. It provides a unified object model for working with SharePoint Online and Teams which is agnostic to the underlying API's being called
https://aka.ms/pnp/coresdk/docs
MIT License
307 stars 192 forks source link

Support for MS Graph Search endpoint #1301

Open hazzinator1 opened 1 year ago

hazzinator1 commented 1 year ago

Category

Describe the feature

We have recently swapped over from PnPJS in the UI to making our Graph/SharePoint calls with PnPCore in our API. I was shocked to find that PnPCore doesn't currently support the Graph Search endpoint (https://graph.microsoft.com/v1.0/search/query), and instead uses the SharePoint API endpoint (_api/search/postquery). We are making heavy use of the Graph Search endpoint in our app, and cannot verify whether we are going to be running into problems by using the SharePoint search instead. They seem roughly similar, but I would still be a lot more comfortable if I knew PnPCore could support Graph searching natively.

Describe the solution you'd like

Happy to leave it up to the devs to determine this, but a strongly typed way of accessing the Graph Search endpoint would be required. Some inspiration could be taken from how GraphServiceClient does it within the Microsoft.Graph Nuget package.

Additional context

I have gone the route of leveraging the GraphServiceClient.Search.Query from Microsoft Graph for now.

jansenbe commented 1 year ago

@hazzinator1 : this is on the todo list, but given my busy schedule I did not get to it yet. While waiting for native support you can always opt to directly call the needed Graph endpoint yourselves, this is quite easy via our option to call a custom API call as explained here: https://pnp.github.io/pnpcore/using-the-sdk/basics-customapirequests.html#making-a-custom-microsoft-graph-request