3

私は次のようなポケットベルを持っています:

@using MvcContrib.UI.Pager
@model MvcContrib.Pagination.IPagination

<p/>
  @Html.Pager(Model).First("First").Last("Last").Next("Next").Previous("Previous")
<p/>

これを表示する代わりに:

10841の1-10を最初に表示| 前へ| 次へ| 最後

これを表示します:

<div class='pagination'><span class='paginationLeft'>Showing 1 - 10 of 10841 </span><span class='paginationRight'>First | Previous | <a href="/Home/Events?page=2">Next</a> | <a href="/Home/Events?page=1085">Last</a></span></div>

codeprojectからサンプルプロジェクトもダウンロードしましたが、実行すると同じ問題が発生します。

何が問題になる可能性がありますか?助けてくれませんか?

4

2 に答える 2

3

文字列を返すと、Razorは自動的にhtmlをエンコードします。IHtmlStringを返す場合、Htmlはエンコードされません。

ページャーメソッドはIHtmlStringではなくStringを返しますか?

Html.Rawを使用してみてください。このメソッドは、文字列をIHtmlStringに変換します。

@Html.Raw(Html.Pager(Model).First("First").Last("Last").Next("Next").Previous("Previous"))
于 2011-04-05T19:24:22.547 に答える
3

プロジェクトではなくサンプルプロジェクトで機能する理由は、サンプルプロジェクトでは、部分ページでを使用しているためです。このページは、からレンダリングされた文字列がhtmlとして出力されるようにレンダリング@Html.Pagerするときに、メインページで呼び出されます。エンコードされたhtmlより。@{Html.RenderPartial();}Pager

サブページなしでページャーを使用する必要がある場合はHtml.Raw、LinkgoronがHtml.Pagerデフォルトとして提案したように、呼び出しをラップする必要がありToStringます。stringIHtmlString

于 2011-04-05T19:56:03.263 に答える