如何隐藏.NET Core上的System.Exception错误? [英] How can I hide System.Exception errors on .NET Core?

查看:23
本文介绍了如何隐藏.NET Core上的System.Exception错误?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我现在尝试使用.NET Web API改进自己,并且正在尝试在Swagger中返回自定义错误。但是当返回这个自定义错误时,我可以看到错误在哪一行上。我如何才能防止这种情况?

public async Task<BookCreateDTO> CreateBook(BookCreateDTO bookCreateDto)
        {
            if (await _context.Books.AnyAsync(x => x.Name == bookCreateDto.Name))
            {
                throw new BookExistException("Book already exist");
            }

            var book= _mapper.Map<Book>(bookCreateDto);
            _context.Books.Add(book);
            await _context.SaveChangesAsync();
            return book;
        }
我应该怎么做才能在Swagger响应中仅看到此异常消息? 感谢您的帮助。

推荐答案

异常应为异常:不要对非异常错误引发异常。

我不建议在C#操作方法返回类型中指定Web服务的响应DTO类型,因为这会限制您的表现力(正如您正在发现的那样)。

这篇关于如何隐藏.NET Core上的System.Exception错误?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆