也许标题不是最好的描述错误。我将尝试描述正在发生的事情。
首先是我的场景:我正在使用“SAP Crystal Reports para Visual Studio 2010”。这是代码的一部分:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Save(FacturaHeaderModel model, FormCollection formCollection)
{
...
var reporte = model.Movimiento.DescripLarga.ToLowerInvariant().Contains("compra")
? System.Web.HttpContext.Current.Request.PhysicalApplicationPath + @"rpt\fact_compra.rpt"
: System.Web.HttpContext.Current.Request.PhysicalApplicationPath + @"rpt\fact_venta.rpt";
var rptH = new ReportClass { FileName = reporte };
rptH.Load();
rptH.RecordSelectionFormula = "{CtaCteCliente.CtaCteClienteId}=" + facturaId;
var cnn = new ReportHelper(); //internal function to connect to the database all the sub reports in the report to show
cnn.Connect(rptH);
try
{
var stream = rptH.ExportToStream(ExportFormatType.PortableDocFormat);
return File(stream, "application/pdf");
}
catch
{
return "Error";
}
}
由于某种原因无法正常工作并且没有显示任何结果。在系统的其他部分使用类似代码调用报告,一切正常。
我可以在此处添加其他信息以正确诊断问题。
编辑:2013 年 2 月 9 日
这是我观点的一部分:
@using (Html.BeginForm("Guardar", "Facturas", FormMethod.Post))
{
<fieldset>
<div class="editor-label" style="font-size:16px;">
@Html.LabelFor(m => m.Movimiento.DescripLarga)
<div class="editor-field">
@Html.TextBoxFor(m => m.Movimiento.DescripLarga, new { @readonly = "readonly", style = "font-weight: bold;font-size:16px;" })
</div>
</div>
....
<input type="submit" name="Guardar" id="guardar" title="Guardar" value="Guardar" />
......
}
这是请求和响应的一部分:
Encabezados de respuesta
Cache-Control private
Connection Close
Content-Length 42138
Content-Type application/pdf
Date Mon, 02 Sep 2013 21:30:53 GMT
Server ASP.NET Development Server/10.0.0.0
X-AspNet-Version 4.0.30319
X-AspNetMvc-Version 3.0
Encabezados de solicitud
Accept */*
Accept-Encoding gzip, deflate
Accept-Language es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3
Content-Length 340
Content-Type application/x-www-form-urlencoded; charset=UTF-8
Host xxxxx
Referer http://xxxxx/Facturas/Compras
User-Agent Mozilla/5.0 (Windows NT 6.1; rv:23.0) Gecko/20100101 Firefox/23.0
X-Requested-With XMLHttpRequest
我想象错误实际上是通过客户端在您发送的服务器上等待的那种响应。但是应该解决吗?