我在 Mono 3.x 上,在 Mac OSX 上,我正在尝试使用 ServiceStack 返回一个静态文件。该代码(并且根据其他答案应该是)非常简单:
public class AirPlayService : Service
{
public object Get(Movie request)
{
var fileName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), "Movies", request.Name);
var file = new FileInfo(fileName);
return new HttpResult(file, asAttachment:false);
}
}
Movie 对象是一个简单的 DTO。
当我的 Get() 被调用时,我在终端窗口中看到以下错误:
错误:处理请求时发生错误:[IOException] 写入失败,异常:写入失败信息:无法将错误写入响应:{0},异常:发送标头后无法更改。错误:HttpListenerResponseWrapper 中的错误:写入失败,异常:写入失败
ServiceStack 是 3.9.35 版本;Mono JIT 编译器版本 3.0.3(master/39c48d5 Tue Jan 8 12:12:24 EST 2013);.NET 4.5。
我究竟做错了什么?