2 types derived from ProblemDetails
Microsoft.AspNetCore.Http.Abstractions (1)
ProblemDetails\HttpValidationProblemDetails.cs (1)
12public class HttpValidationProblemDetails : ProblemDetails
Microsoft.AspNetCore.Mvc.Formatters.Xml.Test (1)
ProblemDetailsWrapperProviderFactoryTest.cs (1)
71private class CustomProblemDetails : ProblemDetails { }
48 instantiations of ProblemDetails
BasicWebSite (1)
Controllers\ContactApiController.cs (1)
103return NotFound(new ProblemDetails
Microsoft.AspNetCore.Diagnostics (1)
DeveloperExceptionPage\DeveloperExceptionPageMiddlewareImpl.cs (1)
253var problemDetails = new ProblemDetails
Microsoft.AspNetCore.Http.Abstractions (1)
ProblemDetails\ProblemDetailsContext.cs (1)
31get => _problemDetails ??= new ProblemDetails();
Microsoft.AspNetCore.Http.Abstractions.Tests (4)
ProblemDetailsContextTests.cs (1)
16ProblemDetails problemDetails = new();
ProblemDetailsJsonConverterTest.cs (3)
162var value = new ProblemDetails 193var value = new ProblemDetails 217var value = new ProblemDetails
Microsoft.AspNetCore.Http.Extensions (1)
ProblemDetailsJsonContext.ProblemDetails.g.cs (1)
31ObjectCreator = () => new global::Microsoft.AspNetCore.Mvc.ProblemDetails(),
Microsoft.AspNetCore.Http.Results (1)
TypedResults.cs (1)
789var problemDetails = new ProblemDetails
Microsoft.AspNetCore.Http.Results.Tests (19)
BadRequestOfTResultTests.cs (1)
88var details = new ProblemDetails { Status = StatusCodes.Status422UnprocessableEntity, };
ConflictOfTResultTests.cs (1)
35var obj = new ProblemDetails();
InternalServerErrorOfTResultTests.cs (1)
88var details = new ProblemDetails { Status = StatusCodes.Status422UnprocessableEntity, };
JsonResultTests.cs (3)
121var details = new ProblemDetails(); 179var details = new ProblemDetails() 230var details = new ProblemDetails { Status = StatusCodes.Status413RequestEntityTooLarge, };
ProblemResultTests.cs (10)
19var details = new ProblemDetails(); 48var details = new ProblemDetails(); 109var details = new ProblemDetails() 173var details = new ProblemDetails { Status = StatusCodes.Status413RequestEntityTooLarge, }; 195var result = new ProblemHttpResult(new()); 206var result = Assert.IsAssignableFrom<IStatusCodeHttpResult>(new ProblemHttpResult(new() { Status = StatusCodes.Status416RangeNotSatisfiable })); 214var result = Assert.IsAssignableFrom<IStatusCodeHttpResult>(new ProblemHttpResult(new())); 222var value = new ProblemDetails(); 234var value = new ProblemDetails(); 246var result = Assert.IsAssignableFrom<IContentTypeHttpResult>(new ProblemHttpResult(new()));
ResultsTests.cs (2)
1361var problem = new ProblemDetails { Title = "Test title" }; 1765(() => Results.Problem(new()), typeof(ProblemHttpResult)),
TypedResultsTests.cs (1)
1153var problem = new ProblemDetails { Title = "Test title" };
Microsoft.AspNetCore.Mvc.Core (2)
ControllerBase.cs (1)
1870problemDetails = new ProblemDetails
Infrastructure\DefaultProblemDetailsFactory.cs (1)
48var problemDetails = new ProblemDetails
Microsoft.AspNetCore.Mvc.Core.Test (13)
ActionResultOfTTest.cs (1)
81var value = new ProblemDetails { Status = StatusCodes.Status400BadRequest };
Infrastructure\DefaultApiProblemDetailsWriterTest.cs (4)
26var expectedProblem = new ProblemDetails() 61var originalProblemDetails = new ProblemDetails(); 63var expectedProblem = new ProblemDetails() 100var expectedProblem = new ProblemDetails();
Infrastructure\ObjectResultExecutorTest.cs (6)
122var result = new ObjectResult(new ProblemDetails()) 147var result = new ObjectResult(new ProblemDetails()); 169var result = new ObjectResult(new ProblemDetails()); 192var result = new ObjectResult(new ProblemDetails()) 217var result = new ObjectResult(new ProblemDetails()) 241var result = new ObjectResult(new ProblemDetails());
ObjectResultTests.cs (2)
98var details = new ProblemDetails { Status = StatusCodes.Status413RequestEntityTooLarge, }; 129var details = new ProblemDetails { Status = StatusCodes.Status422UnprocessableEntity, };
Microsoft.AspNetCore.Mvc.Formatters.Xml (1)
ProblemDetailsWrapper.cs (1)
28: this(new ProblemDetails())
Microsoft.AspNetCore.Mvc.Formatters.Xml.Test (2)
ProblemDetailsWrapperProviderFactoryTest.cs (1)
27var instance = new ProblemDetails();
ProblemDetailsWrapperTest.cs (1)
60var problemDetails = new ProblemDetails
Microsoft.AspNetCore.Mvc.NewtonsoftJson (1)
ProblemDetailsConverter.cs (1)
28var problemDetails = (ProblemDetails?)existingValue ?? new ProblemDetails();
XmlFormattersWebSite (1)
Controllers\XmlApiControllerBase.cs (1)
20return NotFound(new ProblemDetails
356 references to ProblemDetails
Diagnostics.FunctionalTests (10)
DeveloperExceptionPageSampleTest.cs (2)
48var body = await response.Content.ReadFromJsonAsync<ProblemDetails>();
ProblemDetailsExceptionHandlerSampleTest.cs (4)
33var body = await response.Content.ReadFromJsonAsync<ProblemDetails>(); 50var body = await response.Content.ReadFromJsonAsync<ProblemDetails>();
StatusCodeSampleTest.cs (4)
88var body = await response.Content.ReadFromJsonAsync<ProblemDetails>(); 105var body = await response.Content.ReadFromJsonAsync<ProblemDetails>();
FormatterWebSite (1)
Controllers\JsonOutputFormatterController.cs (1)
63public ActionResult<ProblemDetails> ProblemDetailsResult() => NotFound();
Microsoft.AspNetCore.Diagnostics (2)
DeveloperExceptionPage\DeveloperExceptionPageMiddlewareImpl.cs (2)
251private ProblemDetails CreateProblemDetails(ErrorContext errorContext, HttpContext httpContext) 253var problemDetails = new ProblemDetails
Microsoft.AspNetCore.Diagnostics.Tests (8)
DeveloperExceptionPageMiddlewareTest.cs (6)
69var body = await response.Content.ReadFromJsonAsync<ProblemDetails>(); 122var body = await response.Content.ReadFromJsonAsync<ProblemDetails>(); 181var body = await response.Content.ReadFromJsonAsync<ProblemDetails>();
ExceptionHandlerMiddlewareTest.cs (2)
84var body = await response.Content.ReadFromJsonAsync<ProblemDetails>();
Microsoft.AspNetCore.Http.Abstractions (9)
ProblemDetails\HttpValidationProblemDetails.cs (1)
10/// A <see cref="ProblemDetails"/> for validation errors.
ProblemDetails\IProblemDetailsService.cs (3)
8/// create a <see cref="Mvc.ProblemDetails"/> response. 13/// Write a <see cref="Mvc.ProblemDetails"/> response to the current context, 28/// Try to write a <see cref="Mvc.ProblemDetails"/> response to the current context,
ProblemDetails\IProblemDetailsWriter.cs (3)
7/// Defines a type that write a <see cref="Mvc.ProblemDetails"/> 13/// Write a <see cref="Mvc.ProblemDetails"/> response to the current context 19/// Determines whether this instance can write a <see cref="Mvc.ProblemDetails"/> to the current context.
ProblemDetails\ProblemDetailsContext.cs (2)
13private ProblemDetails? _problemDetails; 29public ProblemDetails ProblemDetails
Microsoft.AspNetCore.Http.Abstractions.Tests (13)
ProblemDetailsContextTests.cs (1)
16ProblemDetails problemDetails = new();
ProblemDetailsJsonConverterTest.cs (12)
26JsonSerializer.Deserialize(ref reader, typeof(ProblemDetails), JsonSerializerOptions); 46var problemDetails = JsonSerializer.Deserialize<ProblemDetails>(ref reader, JsonSerializerOptions); 77var problemDetails = JsonSerializer.Deserialize<ProblemDetails>(json, JsonSerializerOptions); 109var problemDetails = JsonSerializer.Deserialize<ProblemDetails>(json, serializerOptions); 141var problemDetails = JsonSerializer.Deserialize<ProblemDetails>(ref reader, JsonSerializerOptions); 162var value = new ProblemDetails 193var value = new ProblemDetails 217var value = new ProblemDetails
Microsoft.AspNetCore.Http.Extensions (65)
ProblemDetailsJsonContext.cs (1)
10[JsonSerializable(typeof(ProblemDetails))]
ProblemDetailsJsonContext.GetJsonTypeInfo.g.cs (1)
26if (type == typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails))
ProblemDetailsJsonContext.HttpValidationProblemDetails.g.cs (24)
78DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 80Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Type, 81Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Type = value!, 88AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Type", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 99DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 101Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Title, 102Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Title = value!, 109AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Title", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 120DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 122Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Status, 123Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Status = value!, 130AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Status", InstanceMemberBindingFlags, null, typeof(int?), global::System.Array.Empty<global::System.Type>(), null), 141DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 143Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Detail, 144Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Detail = value!, 151AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Detail", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 162DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 164Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Instance, 165Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Instance = value!, 172AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Instance", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 183DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 185Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Extensions, 186Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Extensions = value!, 193AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Extensions", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, object>), global::System.Array.Empty<global::System.Type>(), null),
ProblemDetailsJsonContext.ProblemDetails.g.cs (34)
13private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.AspNetCore.Mvc.ProblemDetails>? _ProblemDetails; 19public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.AspNetCore.Mvc.ProblemDetails> ProblemDetails 22get => _ProblemDetails ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.AspNetCore.Mvc.ProblemDetails>)Options.GetTypeInfo(typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails)); 25private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.AspNetCore.Mvc.ProblemDetails> Create_ProblemDetails(global::System.Text.Json.JsonSerializerOptions options) 27if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.AspNetCore.Mvc.ProblemDetails>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.AspNetCore.Mvc.ProblemDetails> jsonTypeInfo)) 29var objectInfo = new global::System.Text.Json.Serialization.Metadata.JsonObjectInfoValues<global::Microsoft.AspNetCore.Mvc.ProblemDetails> 35ConstructorAttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetConstructor(InstanceMemberBindingFlags, binder: null, global::System.Array.Empty<global::System.Type>(), modifiers: null), 39jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateObjectInfo<global::Microsoft.AspNetCore.Mvc.ProblemDetails>(options, objectInfo); 56DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 58Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Type, 59Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Type = value!, 66AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Type", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 77DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 79Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Title, 80Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Title = value!, 87AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Title", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 98DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 100Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Status, 101Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Status = value!, 108AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Status", InstanceMemberBindingFlags, null, typeof(int?), global::System.Array.Empty<global::System.Type>(), null), 119DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 121Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Detail, 122Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Detail = value!, 129AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Detail", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 140DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 142Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Instance, 143Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Instance = value!, 150AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Instance", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 161DeclaringType = typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails), 163Getter = static obj => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Extensions, 164Setter = static (obj, value) => ((global::Microsoft.AspNetCore.Mvc.ProblemDetails)obj).Extensions = value!, 171AttributeProviderFactory = static () => typeof(global::Microsoft.AspNetCore.Mvc.ProblemDetails).GetProperty("Extensions", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, object>), global::System.Array.Empty<global::System.Type>(), null),
ProblemDetailsOptions.cs (1)
13/// The operation that customizes the current <see cref="Mvc.ProblemDetails"/> instance.
ProblemDetailsServiceCollectionExtensions.cs (2)
18/// Adds services required for creation of <see cref="ProblemDetails"/> for failed requests. 29/// Adds services required for creation of <see cref="ProblemDetails"/> for failed requests.
Properties\AssemblyInfo.cs (1)
6[assembly: TypeForwardedTo(typeof(Microsoft.AspNetCore.Mvc.ProblemDetails))]
src\Shared\ProblemDetails\ProblemDetailsDefaults.cs (1)
170public static void Apply(ProblemDetails problemDetails, int? statusCode)
Microsoft.AspNetCore.Http.Results (65)
HttpResultsHelper.cs (1)
144if (value is ProblemDetails problemDetails)
JsonHttpResultOfT.cs (2)
35if (value is ProblemDetails problemDetails) 55if (value is ProblemDetails problemDetails)
ProblemHttpResult.cs (5)
17public sealed class ProblemHttpResult : IResult, IEndpointMetadataProvider, IStatusCodeHttpResult, IContentTypeHttpResult, IValueHttpResult, IValueHttpResult<ProblemDetails> 24internal ProblemHttpResult(ProblemDetails problemDetails) 33public ProblemDetails ProblemDetails { get; } 37ProblemDetails? IValueHttpResult<ProblemDetails>.Value => ProblemDetails;
Results.cs (27)
706/// Produces a <see cref="ProblemDetails"/> response. 708/// <param name="statusCode">The value for <see cref="ProblemDetails.Status" />.</param> 709/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 710/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 711/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 712/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 713/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param> 725/// Produces a <see cref="ProblemDetails"/> response. 727/// <param name="statusCode">The value for <see cref="ProblemDetails.Status" />.</param> 728/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 729/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 730/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 731/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 732/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param> 746/// Produces a <see cref="ProblemDetails"/> response. 748/// <param name="problemDetails">The <see cref="ProblemDetails"/> object to produce a response from.</param> 750public static IResult Problem(ProblemDetails problemDetails) 758/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 759/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 761/// <param name="title">The value for <see cref="ProblemDetails.Title" />. Defaults to "One or more validation errors occurred."</param> 762/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 763/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param> 782/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 783/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 785/// <param name="title">The value for <see cref="ProblemDetails.Title" />. Defaults to "One or more validation errors occurred."</param> 786/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 787/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param>
src\Shared\ProblemDetails\ProblemDetailsDefaults.cs (1)
170public static void Apply(ProblemDetails problemDetails, int? statusCode)
TypedResults.cs (29)
749/// Produces a <see cref="ProblemDetails"/> response. 751/// <param name="statusCode">The value for <see cref="ProblemDetails.Status" />.</param> 752/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 753/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 754/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 755/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 756/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param> 770/// Produces a <see cref="ProblemDetails"/> response. 772/// <param name="statusCode">The value for <see cref="ProblemDetails.Status" />.</param> 773/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 774/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 775/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 776/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 777/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param> 789var problemDetails = new ProblemDetails 804/// Produces a <see cref="ProblemDetails"/> response. 806/// <param name="problemDetails">The <see cref="ProblemDetails"/> object to produce a response from.</param> 808public static ProblemHttpResult Problem(ProblemDetails problemDetails) 819/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 820/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 821/// <param name="title">The value for <see cref="ProblemDetails.Title" />. Defaults to "One or more validation errors occurred."</param> 822/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 823/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param> 840/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 841/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 842/// <param name="title">The value for <see cref="ProblemDetails.Title" />. Defaults to "One or more validation errors occurred."</param> 843/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 844/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param> 872private static void CopyExtensions(IEnumerable<KeyValuePair<string, object?>>? extensions, ProblemDetails problemDetails)
Microsoft.AspNetCore.Http.Results.Tests (34)
BadRequestOfTResultTests.cs (2)
88var details = new ProblemDetails { Status = StatusCodes.Status422UnprocessableEntity, }; 89var result = new BadRequest<ProblemDetails>(details);
ConflictOfTResultTests.cs (2)
35var obj = new ProblemDetails(); 36var conflictObjectResult = new Conflict<ProblemDetails>(obj);
InternalServerErrorOfTResultTests.cs (2)
88var details = new ProblemDetails { Status = StatusCodes.Status422UnprocessableEntity, }; 89var result = new InternalServerError<ProblemDetails>(details);
JsonResultTests.cs (7)
121var details = new ProblemDetails(); 123var result = new JsonHttpResult<ProblemDetails>(details, jsonSerializerOptions: JsonSerializerOptions.Web); 140var responseDetails = JsonSerializer.Deserialize<ProblemDetails>(stream, JsonSerializerOptions.Web); 179var details = new ProblemDetails() 230var details = new ProblemDetails { Status = StatusCodes.Status413RequestEntityTooLarge, }; 232var result = new JsonHttpResult<ProblemDetails>(details, jsonSerializerOptions: null);
ProblemResultTests.cs (13)
19var details = new ProblemDetails(); 38var responseDetails = JsonSerializer.Deserialize<ProblemDetails>(stream, JsonSerializerOptions.Web); 48var details = new ProblemDetails(); 70var responseDetails = JsonSerializer.Deserialize<ProblemDetails>(stream, JsonSerializerOptions.Web); 109var details = new ProblemDetails() 173var details = new ProblemDetails { Status = StatusCodes.Status413RequestEntityTooLarge, }; 222var value = new ProblemDetails(); 226Assert.IsType<ProblemDetails>(result.Value); 234var value = new ProblemDetails(); 237var result = Assert.IsAssignableFrom<IValueHttpResult<ProblemDetails>>(new ProblemHttpResult(value)); 238Assert.IsType<ProblemDetails>(result.Value);
ResultsTests.cs (2)
1244Assert.Throws<ArgumentNullException>("problemDetails", () => Results.Problem(default(ProblemDetails))); 1361var problem = new ProblemDetails { Title = "Test title" };
TypedResultsTests.cs (2)
1060Assert.Throws<ArgumentNullException>("problemDetails", () => TypedResults.Problem(default(ProblemDetails))); 1153var problem = new ProblemDetails { Title = "Test title" };
ValidationProblemResultTests.cs (4)
42var responseDetails = JsonSerializer.Deserialize<ProblemDetails>(stream, JsonSerializerOptions.Web); 74var responseDetails = JsonSerializer.Deserialize<ProblemDetails>(stream, JsonSerializerOptions.Web);
Microsoft.AspNetCore.Mvc.ApiExplorer.Test (13)
ApiResponseTypeProviderTest.cs (10)
83new FilterDescriptor(new ProducesResponseTypeAttribute(typeof(ProblemDetails), 400), FilterScope.Controller), 118Assert.Equal(typeof(ProblemDetails), responseType.Type); 441var errorType = typeof(ProblemDetails); 637actionDescriptor.Properties[typeof(ProducesErrorResponseTypeAttribute)] = new ProducesErrorResponseTypeAttribute(typeof(ProblemDetails)); 650Assert.Equal(typeof(ProblemDetails), responseType.Type); 667Assert.Equal(typeof(ProblemDetails), responseType.Type); 687actionDescriptor.Properties[typeof(ProducesErrorResponseTypeAttribute)] = new ProducesErrorResponseTypeAttribute(typeof(ProblemDetails)); 717actionDescriptor.Properties[typeof(ProducesErrorResponseTypeAttribute)] = new ProducesErrorResponseTypeAttribute(typeof(ProblemDetails)); 775actionDescriptor.FilterDescriptors.Add(new FilterDescriptor(new ProducesResponseTypeAttribute(typeof(ProblemDetails), 404, "application/problem+json"), FilterScope.Action)); 801Assert.Equal(typeof(ProblemDetails), responseType.Type);
EndpointMetadataApiDescriptionProviderTest.cs (3)
1093Assert.Contains(apiDescription.SupportedResponseTypes, m => m is { StatusCode: 400, Type: { } type } && type == typeof(ProblemDetails)); 1185Assert.Equal(typeof(ProblemDetails), responseType.Type); 1191Assert.Equal(typeof(ProblemDetails), responseType.Type);
Microsoft.AspNetCore.Mvc.Core (55)
ActionResultOfT.cs (1)
86if (Value is ProblemDetails problemDetails && problemDetails.Status != null)
ApiBehaviorOptions.cs (2)
72/// <see cref="ProblemDetails"/> instance (returned as the value for <see cref="ObjectResult"/>). 87/// instance where the <see cref="ObjectResult.Value"/> is <see cref="ProblemDetails"/>.
ApplicationModels\ApiBehaviorApplicationModelProvider.cs (1)
43var defaultErrorType = options.SuppressMapClientErrors ? typeof(void) : typeof(ProblemDetails);
ClientErrorData.cs (2)
16/// By default, this maps to <see cref="ProblemDetails.Type"/>. 24/// By default, this maps to <see cref="ProblemDetails.Title"/> and should not change
ControllerBase.cs (23)
1829/// Creates an <see cref="ObjectResult"/> that produces a <see cref="ProblemDetails"/> response. 1831/// <param name="statusCode">The value for <see cref="ProblemDetails.Status" />.</param> 1832/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 1833/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 1834/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 1835/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 1848/// Creates an <see cref="ObjectResult"/> that produces a <see cref="ProblemDetails"/> response. 1850/// <param name="statusCode">The value for <see cref="ProblemDetails.Status" />.</param> 1851/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 1852/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 1853/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 1854/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 1855/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param> 1866ProblemDetails problemDetails; 1942/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 1943/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 1945/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 1946/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 1966/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 1967/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 1969/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 1970/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 1973/// <param name="extensions">The value for <see cref="ProblemDetails.Extensions" />.</param>
Infrastructure\DefaultApiProblemDetailsWriter.cs (2)
56var problemDetails = _problemDetailsFactory.CreateProblemDetails( 75typeof(ProblemDetails),
Infrastructure\DefaultProblemDetailsFactory.cs (3)
38public override ProblemDetails CreateProblemDetails( 48var problemDetails = new ProblemDetails 95private void ApplyProblemDetailsDefaults(HttpContext httpContext, ProblemDetails problemDetails, int statusCode)
Infrastructure\ObjectResultExecutor.cs (1)
134if (result.Value is ProblemDetails)
Infrastructure\ProblemDetailsClientErrorFactory.cs (1)
17var problemDetails = _problemDetailsFactory.CreateProblemDetails(actionContext.HttpContext, clientError.StatusCode);
Infrastructure\ProblemDetailsFactory.cs (14)
10/// Factory to produce <see cref="ProblemDetails" /> and <see cref="ValidationProblemDetails" />. 15/// Creates a <see cref="ProblemDetails" /> instance that configures defaults based on values specified in <see cref="ApiBehaviorOptions" />. 18/// <param name="statusCode">The value for <see cref="ProblemDetails.Status"/>.</param> 19/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 20/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 21/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 22/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param> 23/// <returns>The <see cref="ProblemDetails"/> instance.</returns> 24public abstract ProblemDetails CreateProblemDetails( 37/// <param name="statusCode">The value for <see cref="ProblemDetails.Status"/>.</param> 38/// <param name="title">The value for <see cref="ProblemDetails.Title" />.</param> 39/// <param name="type">The value for <see cref="ProblemDetails.Type" />.</param> 40/// <param name="detail">The value for <see cref="ProblemDetails.Detail" />.</param> 41/// <param name="instance">The value for <see cref="ProblemDetails.Instance" />.</param>
ObjectResult.cs (1)
73if (Value is ProblemDetails details)
ProducesErrorResponseTypeAttribute.cs (1)
11/// client error type to be <see cref="ProblemDetails"/>, if mapping client errors (<see cref="ApiBehaviorOptions.ClientErrorMapping"/>)
Properties\AssemblyInfo.cs (1)
9[assembly: TypeForwardedTo(typeof(ProblemDetails))]
src\Shared\ProblemDetails\ProblemDetailsDefaults.cs (1)
170public static void Apply(ProblemDetails problemDetails, int? statusCode)
ValidationProblemDetails.cs (1)
12/// A <see cref="ProblemDetails"/> for validation errors.
Microsoft.AspNetCore.Mvc.Core.Test (36)
ActionResultOfTTest.cs (3)
81var value = new ProblemDetails { Status = StatusCodes.Status400BadRequest }; 82var actionResultOfT = new ActionResult<ProblemDetails>(value); 91Assert.Equal(typeof(ProblemDetails), objectResult.DeclaredType);
ApplicationModels\ApiBehaviorApplicationModelProviderTest.cs (1)
142Assert.Equal(typeof(ProblemDetails), convention.DefaultErrorResponseType.Type);
ApplicationModels\ApiConventionApplicationModelConventionTest.cs (1)
152errorType = errorType ?? typeof(ProblemDetails);
ControllerBaseTest.cs (8)
2475var problemDetails = Assert.IsType<ProblemDetails>(badRequestResult.Value); 2501var problemDetails = Assert.IsType<ProblemDetails>(badRequestResult.Value); 2525var problemDetails = Assert.IsType<ProblemDetails>(badRequestResult.Value); 2546var problemDetails = Assert.IsType<ProblemDetails>(badRequestResult.Value);
Infrastructure\DefaultApiProblemDetailsWriterTest.cs (10)
26var expectedProblem = new ProblemDetails() 45var problemDetails = await JsonSerializer.DeserializeAsync<ProblemDetails>(stream, JsonSerializerOptions.Web); 61var originalProblemDetails = new ProblemDetails(); 63var expectedProblem = new ProblemDetails() 84var problemDetails = await JsonSerializer.DeserializeAsync<ProblemDetails>(stream, JsonSerializerOptions.Web); 100var expectedProblem = new ProblemDetails(); 115var problemDetails = await JsonSerializer.DeserializeAsync<ProblemDetails>(stream);
Infrastructure\ProblemDetailsFactoryTest.cs (3)
19var problemDetails = Factory.CreateProblemDetails(GetHttpContext()); 40var problemDetails = Factory.CreateProblemDetails(GetHttpContext(), statusCode: 406); 63var problemDetails = Factory.CreateProblemDetails(GetHttpContext(), statusCode: 406, title: title, detail: detail);
Infrastructure\ProblemDetalsClientErrorFactoryTest.cs (8)
32var problemDetails = Assert.IsType<ProblemDetails>(objectResult.Value); 59var problemDetails = Assert.IsType<ProblemDetails>(objectResult.Value); 89var problemDetails = Assert.IsType<ProblemDetails>(objectResult.Value); 115var problemDetails = Assert.IsType<ProblemDetails>(objectResult.Value);
ObjectResultTests.cs (2)
98var details = new ProblemDetails { Status = StatusCodes.Status413RequestEntityTooLarge, }; 129var details = new ProblemDetails { Status = StatusCodes.Status422UnprocessableEntity, };
Microsoft.AspNetCore.Mvc.Formatters.Xml (5)
ProblemDetailsWrapper.cs (3)
12/// Wrapper class for <see cref="Mvc.ProblemDetails"/> to enable it to be serialized by the xml formatters. 35public ProblemDetailsWrapper(ProblemDetails problemDetails) 40internal ProblemDetails ProblemDetails { get; }
ProblemDetailsWrapperProviderFactory.cs (2)
10if (context.DeclaredType == typeof(ProblemDetails)) 12return new WrapperProvider(typeof(ProblemDetailsWrapper), p => new ProblemDetailsWrapper((ProblemDetails)p!));
Microsoft.AspNetCore.Mvc.Formatters.Xml.Test (3)
ProblemDetailsWrapperProviderFactoryTest.cs (1)
27var instance = new ProblemDetails();
ProblemDetailsWrapperTest.cs (2)
32var problemDetails = Assert.IsType<ProblemDetailsWrapper>(value).ProblemDetails; 60var problemDetails = new ProblemDetails
Microsoft.AspNetCore.Mvc.FunctionalTests (14)
ApiBehaviorTest.cs (4)
130var problemDetails = JsonConvert.DeserializeObject<ProblemDetails>(content); 300var problemDetails = JsonConvert.DeserializeObject<ProblemDetails>(
ApiExplorerTest.cs (10)
1293Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1349Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1384Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1419Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1454Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1460Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1494Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1500Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1531Assert.Equal(typeof(ProblemDetails).FullName, responseType.ResponseType); 1538[InlineData("ActionWithNoExplicitType", typeof(ProblemDetails))]
Microsoft.AspNetCore.Mvc.NewtonsoftJson (8)
AnnotatedProblemDetails.cs (2)
15public AnnotatedProblemDetails(ProblemDetails problemDetails) 47public void CopyTo(ProblemDetails problemDetails)
ProblemDetailsConverter.cs (6)
9/// A RFC 7807 compliant <see cref="JsonConverter"/> for <see cref="ProblemDetails"/>. 16return objectType == typeof(ProblemDetails); 28var problemDetails = (ProblemDetails?)existingValue ?? new ProblemDetails(); 43var problemDetails = (ProblemDetails)value;
Microsoft.AspNetCore.Mvc.ViewFeatures.Test (2)
ControllerUnitTestabilityTests.cs (2)
694var problemDetails = Assert.IsType<ProblemDetails>(badRequest.Value);
Microsoft.AspNetCore.OpenApi.Tests (7)
Extensions\JsonTypeInfoExtensionsTests.cs (1)
76[typeof(ProblemDetails), "ProblemDetails"],
Services\OpenApiDocumentService\OpenApiDocumentServiceTests.Responses.cs (1)
49.WithMetadata(new ProducesResponseTypeMetadata(StatusCodes.Status400BadRequest, typeof(ProblemDetails), ["application/json+problem"]));
Services\OpenApiGeneratorTests.cs (3)
549new ProducesResponseTypeMetadata(StatusCodes.Status400BadRequest, typeof(ProblemDetails), new [] { "application/json+problem" }) 598new ProducesResponseTypeMetadata(StatusCodes.Status404NotFound, typeof(ProblemDetails), new[] { "application/problem+json" }), 599new ProducesResponseTypeMetadata(StatusCodes.Status409Conflict, typeof(ProblemDetails), new[] { "application/problem+json" })
Transformers\CustomSchemaTransformerTests.cs (2)
28var errorSchema = await context.GetOrCreateSchemaAsync(typeof(ProblemDetails), cancellationToken: cancellationToken); 93var errorSchema = await context.GetOrCreateSchemaAsync(typeof(ProblemDetails), cancellationToken: cancellationToken);
Microsoft.AspNetCore.Routing (4)
Builder\OpenApiRouteHandlerBuilderExtensions.cs (4)
95/// Adds an <see cref="IProducesResponseTypeMetadata"/> with a <see cref="ProblemDetails"/> type 109return Produces(builder, statusCode, typeof(ProblemDetails), contentType); 113/// Adds an <see cref="IProducesResponseTypeMetadata"/> with a <see cref="ProblemDetails"/> type 130return builder.WithMetadata(new ProducesResponseTypeMetadata(statusCode, typeof(ProblemDetails), [contentType]));
Microsoft.AspNetCore.Routing.Tests (1)
Builder\OpenApiRouteHandlerBuilderExtensionsTest.cs (1)
80Assert.Equal(typeof(ProblemDetails), metadata.Type);
Mvc.Api.Analyzers.Test (1)
SymbolApiResponseMetadataProviderTest.cs (1)
405var expected = compilation.GetTypeByMetadataName(typeof(ProblemDetails).FullName);