你调用的对象是空的。 ASP.NET

时间:2015-03-27 08:32:57

标签: c# asp.net asp.net-mvc exception asp.net-mvc-5

我有一个应用程序,其index.cshtml页面正常工作。在索引中,我有下面的控制器创建一个pdf页面:

 public ActionResult Report()
        {
            LocalReport lr = new LocalReport();
            string path = Path.Combine(Server.MapPath("~/Report"), "Person.rdlc");
            if (System.IO.File.Exists(path))
            {
                lr.ReportPath = path;
            }
            else
            {
                return View("Index");
            }
            List<Person> cm = new List<Person>();

            var viewModel = new PersonIndexData();

            viewModel.People = db.Person
            .Include(k => k.Groups)
            .OrderBy(k => k.Name);

            cm = viewModel.People.ToList();



            ReportDataSource rd = new ReportDataSource("DataSet1", cm);
            lr.DataSources.Add(rd);
            string reportType = "pdf";
            string mimeType = string.Empty;
            string encoding = string.Empty;
            string fileNameExtension = string.Empty;



            string deviceInfo =

            "<DeviceInfo>" +
            "  <OutputFormat>pdf</OutputFormat>" +
            "  <PageWidth>8.5in</PageWidth>" +
            "  <PageHeight>12in</PageHeight>" +
            "  <MarginTop>0.5in</MarginTop>" +
            "  <MarginLeft>0.5in</MarginLeft>" +
            "  <MarginRight>1in</MarginRight>" +
            "  <MarginBottom>0.2in</MarginBottom>" +
            "</DeviceInfo>";

            Warning[] warnings;
            string[] streams;
            byte[] renderedBytes;

            renderedBytes = lr.Render(
                "pdf",
                deviceInfo,
                out mimeType,
                out encoding,
                out fileNameExtension,
                out streams,
                out warnings);


            return File(renderedBytes, mimeType);
        }

当我在Visual Studio中运行项目时,它会创建pdf文件。但是当我发布项目并将其上传到服务器然后调用我得到的操作:

  

对象引用未设置为对象的实例。描述:一个   在执行当前Web期间发生了未处理的异常   请求。请查看堆栈跟踪以获取有关的更多信息   错误以及它在代码中的起源。

     

异常详细信息:System.NullReferenceException:不是对象引用   设置为对象的实例。

Line 60:     </tr> 
Line 61:  
Line 62: @foreach (var item in  Model.People)
Line 63: { 
Line 64:     if(item.IsApproved == true) 
     Source File: Index.cshtml    Line: 62

这个错误对我没有意义,因为它在索引中给出了错误,它始终正常工作。另外为什么它在Visual Studio上工作但在服务器上不工作?感谢。

0 个答案:

没有答案