razorコマンド@
を使用してページに印刷するテキストに簡単なフィルタを適用する必要があります。例の
コード以下を参照してください。@AdilMammadovはあなたが使用することができます言ったように私は何とかthis is foo!!
Asp.net MVC Razorレスポンステキストにフィルタを適用
答えて
の代わりにthis is bar!!
を印刷することを期待し、この.cshtmlビューファイル内
public static class MyHelper
{
public string MyFilter(this string txt)
{
return txt.Replace("foo", "bar");
}
}
@{
var text = "this is foo!!";
}
<div>@text</div>
それのためにHtmlHelper
。 static
方法で
シンプルなC#クラス:
using System;
namespace MvcApplication1.MyHelpers
{
public class MyHelpers
{
public static string FooReplacer(string txt)
{
return txt.Replace("foo", "bar");
}
}
}
そして、あなたのビューでヘルパーを使用します。
@using MvcApplication1
...
<p>@MyHelpers.FooReplacer("foo foo")</p> <!--returns <p>bar bar</p>-->
ビューモデルを指定する必要があります。なぜ、ビューで 'using'ステートメントを使用していますか? '@model MvcApplication1.MyHelpers'に変更する必要があります。' FooReplacer'メソッドを呼び出すと、 'Model.FooReplacer(" foo foo ")' –
@BviLLe_Kidを実行するだけです。 @model MvcApplication1.MyHelpers'しかし、私は私のアプローチがうまく動作していることを知っているのでhttp://stackoverflow.com/a/3244924/1821692 – feeeper
私はあなたが接近していると信じています。唯一の問題は、ビュー内でそのフィルタを指定していないため、ビューがフィルタの使用を知らないことです。
これは動作するはずです:
モデル
public static class MyHelper
{
public string MyFilter(this string txt)
{
return txt.Replace("foo", "bar");
}
}
私はこれが動作することを示すために、あなたのためのdotnetfiddleを作成したビュー
@model AssemblyName.MyHelper
@{
Layout = null;
var text = Model.MyFilter("Let's go to the foo");
}
<div>@text</div>
// will display "Let's go to the bar"
。
希望すると便利です。
この質問に回答としてマークすることができますので、 ! –
- 1. ASP.NET Razor Over ASP.NETを使用したASP.NET WebページMVC Razor Views
- 2. MVC ASP.NET or Razor
- 3. ASP.NET MVC Razorコンテンツプレースホルダー
- 4. TimePicker Razor ASP.NET-MVC
- 5. asp.net mvc razorのコードエディタ
- 6. ASP.NET MVC RazorオブジェクトHtmlAttributes
- 7. ASP.NET MVC Razorのカスタムコントロール
- 8. ASP.NET MVC - Razor and JavaScript
- 9. ASP.NET MVC Razor-DropDownList幅
- 10. ASP.NET MVC DropDownList with razor
- 11. MailToリンク(Razor ASP.NET MVC)の件名にRazorを使用
- 12. ASP.NET MVC Razorデザインテーブルwith rowspan
- 13. display line breaks asp.net mvc razor
- 14. ASP.NET MVC Razor、Html.BeginForm、using statement
- 15. ASP.NET MVC load Razorビューfromデータベース
- 16. ASP.Net MVC 3 Razor Create Report
- 17. TinyMCE in ASP.NET MVC 5 Razor
- 18. ASP.NET MVC Razor @model構文エラー
- 19. Razor構文のASP.NET MVCコンパイルエラー
- 20. ASP.NET MVC Razor Helperノックアウトforeach
- 21. asp.net mvc razor余分なスペース
- 22. ASP.NET MVC承認フィルタ
- 23. Asp.Net MVC 3 Razor Rendering Bug?かみそりビューエンジンASP.Net MVC 3 RCを使用して
- 24. asp.net mvc razorで同時に2つのforeachを使用する
- 25. ASP.NET MVC 3、Razor Views、およびPortable Areas
- 26. ASP.NET MVC Razor - 内部の場合
- 27. Asp.Net MVC 3(Razor、Json、Ajax)マスターディテール - ディテールセーブ失敗
- 28. ASP.NET MVC JavaScriptとRazorのシンプルなケース
- 29. C#でASP.NET MVC with razorのファイルアップロード
- 30. ASP.NET MVC 3、Razor Layout Controllerのような?
この目的のために 'HtmlHelper'を作成することができます。 –
コントローラではなく、ビューでそれを行うのはなぜですか(どこで行うべきですか)。 –
@StephenMueckeなぜなら、印刷されるテキストはデータセットや変数などに存在する可能性があるからです。データセットの各行フィールドで関数を実行するよりも、かみそりレスポンスにフィルタを適用する方が簡単だと思います。 – mhesabi