不支持服务类型IHostBufferPolicySelector

时间:2016-04-03 16:01:31

标签: c# asp.net-mvc-5 asp.net-web-api2

我已经从这里实现了代码:http://www.strathweb.com/2012/09/dealing-with-large-files-in-asp-net-web-api/

不幸的是,当我添加

GlobalConfiguration.Configuration.Services.Replace(typeof(IHostBufferPolicySelector), new NoBufferPolicySelector());

我收到以下错误:

The service type IHostBufferPolicySelector is not supported

为什么不支持此服务,如何解决?我有一个来自visual studio 2013的基本模板项目,引用了web api2和mvc5。

1 个答案:

答案 0 :(得分:0)

使用添加而非替换与IHostBufferPolicySelector时出现此异常。我认为这是因为它只支持一个IHostBufferPolicySelector。

在我的情况下,我使用Katana / Owin托管,所以我没有使用GlobalConfiguration,而是使用我的OwinStartup类中的HttpConfiguration。

TableCell targetCell = getCell(event.getPickResult().getIntersectedNode());
if (targetCell != null) {
    int rowIndex = targetCell.getTableRow().getIndex();
    int columnIndex = columnToIndex(targetCell.getTableColumn());
    ...

而不是

// Doesn't work
var config = new HttpConfiguration();
config.Services.Add(typeof(IHostBufferPolicySelector), new OwinBufferPolicySelector());