microsoftgraph / microsoftgraph/msgraph-sdk-dotnet-core
Streamline server error deserialization when using graph core SDKs
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 164
- Forks
- 65
- Avg merge
- 38m
- Merged PRs (30d)
- 1
Description
We currently provide different experiences across languages to handle error payloads from Graph when using only the Core SDK.
This is apparent when working with tasks (Page Iterator, Large File Upload) and Batch requests making it difficult for developers to understand the cause of failed requests.
e.g.
.NET Core SDK provides a ServiceException which stores the error payload as a string property for LFU
Java, PHP & Python currently don't expose/deserialize the error payload out of the box
We could agree to:
- allow passing custom error mappings with the option of adding convenience methods on the GraphServiceClient to create tasks while passing the generated error models under the hood.
- provide a standard Exception type for the Core SDK that we default to when no custom error mappings are present.
Previous guidance around this, worth referencing. https://github.com/microsoftgraph/msgraph-sdk-design/blob/master/content/ErrorContent.md
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the linked ErrorContent.md guidance and the referenced ServiceException.cs implementation. Compare how Java, PHP, and Python currently expose Graph error payloads for Page Iterator, Large File Upload, and Batch requests. Done means the project has an agreed, consistently described approach for custom mappings or a standard Core SDK exception.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- api, developer-experience
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100