Tips and tricks

Dot.NET C# - Mock Custom Http Status Code response in IActionResult

Write this class


    public class CustomErrorResult : ActionResult
{
    private readonly string _message;
    private readonly int _statusCode;

    public CustomErrorResult(string message, int statusCode)
    {
        _message = message;
        _statusCode = statusCode;
    }

    public override void ExecuteResult(ActionContext context)
    {
        var response = context.HttpContext.Response;
        response.StatusCode = _statusCode;
        response.ContentType = "application/json";

        var result = JsonSerializer.Serialize(new { error = _message });
        response.WriteAsync(result);
    }
}

Then you can use it like so:

return new CustomErrorResult("Version number is missing", 427);

{"type":"main_options","images_arr":"'#ffffff'","enable_ajax":"off","soundcloud_apikey":"","bg_isparallax":"off","bg_slideshow_time":"0","bg_transition":"slidedown","site_url":"https:\/\/digitalzoomstudio.net","theme_url":"https:\/\/digitalzoomstudio.net\/wp-content\/themes\/qucreative\/","blur_ammount":"26","width_column":"50","width_section_bg":"","width_gap":"30","border_width":"0","border_color":"#ffffff","translate_cancel_comment":"Cancel reply","translate_leave_a_comment":"Leave a comment","translate_leave_a_comment_to":"Leave a comment to","is_customize_preview":"off","width_blur_margin":"30","gallery_w_thumbs_autoplay_videos":"off","content_enviroment_opacity":"30","menu_enviroment_opacity":"70","base_url":"https:\/\/digitalzoomstudio.net"}
{"type":"darkfull"}