【发布时间】:2020-01-30 22:13:24
【问题描述】:
我想在 Microsoft.AspNetCore.Mvc.ActionResult 类的对象中返回其他常见信息。此信息应存储在新属性中。这个类是密封的。我该怎么做?
我应该使用装饰器还是适配器模式?
也许应该以与使用新属性完全不同的方式返回此额外的常见操作信息?
【问题讨论】:
标签: asp.net-core-2.1
我想在 Microsoft.AspNetCore.Mvc.ActionResult 类的对象中返回其他常见信息。此信息应存储在新属性中。这个类是密封的。我该怎么做?
我应该使用装饰器还是适配器模式?
也许应该以与使用新属性完全不同的方式返回此额外的常见操作信息?
【问题讨论】:
标签: asp.net-core-2.1
一般我们可以使用new ObjectResult(object value)来返回额外的通用信息:
[HttpGet("{id}")]
public async Task<ActionResult<Localization>> Get(long id)
{
var item = await _context.Localizations.FindAsync(id);
if (item == null)
{
logger.Error(string.Format("LocalizationId: {0} not found.", id));
return new ObjectResult(new DataActionResult(ResultActionCodes.ItemNotFound, string.Format("LocalizationId: {0} not found.", id))); ;
}
return item;
}
【讨论】: