4

私はasp.net mvc 4が初めてです。

RazorPDF を使用して簡単なアプリケーションを作成しました。

アプリケーションは、通常のページを PDF 形式で表示することです。私は新しいアプリケーションを作成しましたが、正常に動作しています。しかし、プロジェクトに実装しているときに同じことが機能せず、アセンブリ 'itextsharp から型 'iTextSharp.text.html.HtmlParser' をロードできませんでした。バージョン = 5.5.3.0、文化 = ニュートラル、PublicKeyToken = 8354ae6d2174ddca'.

私はこれについて調査し、なぜこのエラーが表示されているのかという概念を見つけました。これは、RazorPDF のインストール中に bcoz が iTextSharp 内に HtmlParser をインストールしていないためです。

私が得ていない点は、新しいアプリケーションで同じことをしている場合、すべてをインストールしていて、コードが正常に機能している場合、プロジェクトで同じことをしている場合、このエラーが発生してすべてのものをインストールしていないことです。 .

コードは問題なく動作しています。問題は、プロジェクトに RazorPDF をインストールしているときに、iTextSharp(HtmlEncoder,HtmlTags,HtmlUtilities,WebColors,HtmlParser,Markup,ITextmyHtmlHandler,HtmlWriter,HtmlTagMap) 内の 9 つのサブパッケージすべてがインストールされていないことです。 、4つのサブパッケージ(HtmlEncoder、HtmlTags、HtmlUtilities、WebColors)のみをインストールしています。

HtmlParser がインストールされていないため、この問題が表示されていますか? 誰かがこれ(RazorPDF)の知識を持っていますか.この問題を解決するのを手伝ってくれる人はいますか?

コーディング コントローラー

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Web;
 using System.Web.Mvc;
 using pdf.Models;
 namespace pdf.Controllers
  {
   public class StudentsController : Controller
     {
         public ActionResult Index()
        {
          var studentMarks = new List<MarksCard>()
           {
                        new MarksCard(){ RollNo = 101, Subject = "C#",FullMarks = 100, Obtained = 90},
                        new MarksCard() {RollNo = 101, Subject = "asp.net", FullMarks = 100, Obtained = 80},
                        new MarksCard() {RollNo = 101, Subject = "MVC", FullMarks = 100,Obtained = 100},
                        new MarksCard() {RollNo = 101, Subject = "SQL Server", FullMarks = 100, Obtained = 75},
            };
            return new RazorPDF.PdfResult(studentMarks, "Index");
         } 
   }
 }

モデル

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace pdf.Models
  {
    public class MarksCard
     {
        public int RollNo
         {
           get;
           set;
         }
        public string Subject
        {
         get;
         set;
        }
      public int FullMarks
        {
         get;
         set;
       }
     public int Obtained { get; set; }
   }
}

意見

 @model IEnumerable<pdf.Models.MarksCard>
  @{
    Layout = null;
   }
  <!DOCTYPE html>
   <html>
  <body>
     <table border="1" width='500' bordercolor="RED"><tr><td colspan="3" bgcolor="LightGreen"  
            align="center" valign="top">
         SSLC Marks Sheet 2013</td></tr><tr><td>
          @{ var rollNumber = Model.Select(z => z.RollNo).Take(1).ToArray();}
          Riyaz Akhter<br />RollNo:@rollNumber[0]</td></tr>
         <tr>
          <td bgcolor="lightblue">@Html.DisplayNameFor(moel => moel.Subject)</td>
         <td bgcolor="lightblue">@Html.DisplayNameFor(model => model.FullMarks)</td>
        <td bgcolor="lightblue">@Html.DisplayNameFor(model => model.Obtained)</td></tr>
        @{
          int total = 0;
        }
       @foreach (var item in Model)
         {
          <tr><td>@Html.DisplayFor(modelItem => item.Subject)</td>
              <td>@Html.DisplayFor(modelItem => item.FullMarks)</td>
              <td>@Html.DisplayFor(modelItem => item.Obtained)</td>
             </tr>total += item.Obtained;
       }
      <tr><td>
         </td>
          <td>
             <strong><font color="GREEN">Total</font></strong>
           </td>
         <td>@total</td></tr>
       </table>
    </body>
  </html>
4

1 に答える 1

1

これを読みましたか?:

http://forums.asp.net/t/1925729.aspx?how+to+create+pdf+file+using+razor+pdf

私はそれがあなたが探していたものだと信じています.

于 2014-10-11T10:07:46.430 に答える