我有一个C#Web API,我试图获得自动创建的帮助文档以使用IHttpActionResult.我删除了下面的例子,以便它更容易阅读.
对于对象,下面是一个简单的例子. BusinessObject只是一个包装. CollectionBase是CollectionBase:ObservableCollection< T>,ILoadable其中T:BusinessObject.它是一个旧的代码库,它是自动生成的,但重用它.
public class Value : BusinessObject { public int Id { get; set; } } public class Values : CollectionBase<Value> { public override Value LoadObject(System.Data.IDataRecord record) { return new Value(); } }
对于API方面的事情以下作品.
public class Values : ApiController { public IEnumerable<Value> GetThis() { Values values = new Values(); return values; } }
当我尝试做的时候出现问题
public IHttpActionResult GetThis() { Values values = new Values(); return Ok(values); }
它不会识别它应该使用不同的返回类型. ‘资源描述’最终是IHttpActionResult,没有样本输出.现在我可以补充
config.SetActualResponseType(typeof(IEnumerable<Value>),"Values","GetThis");
它将显示示例输出,但“资源描述”仍将是IHttpActionResult.这是我遇到的主要问题.我想使用IHttpActionResult,因为它很容易使用,如果需要,可以很容易地返回错误代码.我只想自动构建文档.
更新:进一步的研究,我没有罚款这个职位.
Resource Description on Web API Help page is showing “None.”
勉强地,您将响应类型属性添加到方法.
[ResponseType(typeof(IEnumerable<Value>))] public IHttpActionResult GetThis() { Values values = new Values(); return Ok(values); }
虽然这在技术上有用,我修改了我现有的代码来使用它.如果有办法让它自动将其弄清楚,那仍然会很好.不知道这是否可行.
解决方法
这适用于我正在做的事情.它有点乏味,必须包含每一次,但它允许我返回错误代码,并保留帮助文档功能.
[ResponseType(typeof(IEnumerable<Value>))] public IHttpActionResult GetThis() { Values values = new Values(); return Ok(values); }
Resource Description on Web API Help page is showing “None.”
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。