我正在使用razorpdf在我的mvc 4应用程序中生成pdf报告。每次我生成pdf时,description字段都会显示一堆html标签和不应该显示的字段,我只想显示描述字段中的纯文本。有没有人对如何做到这一点有任何建议,还有关于如何将图像添加到pdf页面的任何建议?
这是我的观点,即生成pdf:
@model List<ArdentMC.DHS.COP.Mobile.MVC.Models.Reports>
@{
Layout = "";
}
<!DOCTYPE html>
<html>
<head>
<div style="color=red; align:center;">UNCLASSIFIED/FOR OFFICAL USE ONLY</div>
</head>
<body>
<table style="width:300px;">
@foreach (var item in Model)
{
<tr>
<td>@item.Phase</td>
<td>@item.NocNumber</td>
<td>@item.Title</td>
<td>@item.Location</td>
</tr>
<tr<
<td></td>
<td></td>
<td>@item.ReportDateText</td>
<td>@item.Description</td>
</tr>
}
</table>
<br /><br /><br /><br /><br />
<br /><br /><br /><br /><br />
<div style="color:black; align:center;">US Department of Homeland Security</div>
<br />
<div style="color:red; align:center;">UNCLASSIFIED/FOR OFFICAL USE ONLY</div>
</body>
</html>
这是我的模型,其中的信息来自:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace ArdentMC.DHS.COP.Mobile.MVC.Models
{
public class Reports
{
public string NocNumber { get; set; }
public string Title { get; set; }
public Nullable<System.DateTime> IncidentDate { get; set; }
public string ReportDateText { get; set; }
public string IncidentType { get; set; }
public Nullable<int> IncidentSubtypeId { get; set; }
public string IncidentSubtype { get; set; }
public Nullable<int> PhaseId { get; set; }
public string Phase { get; set; }
public string InitialNotification { get; set; }
public string Location { get; set; }
public string NocSpotRep { get; set; }
public string Contributors { get; set; }
public string Participants { get; set; }
public string Description { get; set; }
public Nullable<int> IncidentStateId { get; set; }
public string IncidentState { get; set; }
public Nullable<System.DateTime> PublishDate { get; set; }
public Nullable<System.DateTime> ArchiveDate { get; set; }
}
}
有没有人对如何才能显示描述文字有一些建议?先感谢您。
答案 0 :(得分:1)
我能够添加 @foreach(模型中的var项){ @ Html.Raw(item.Description) 在我的视图中,它为描述字段呈现了正确的代码,因此没有可见标记,只有文本。
答案 1 :(得分:-1)
public ActionResult NotFound() {
Response.ContentType = "text/html";
return View();
}