2012-05-13 11 views
0

私は、HTMLテンプレートを使用しています。サーバー側をコンパイルしたいが、RAZORビューの内部を定義したい。複数行のHTMLを文字列引数としてHTMLヘルパーに渡すことはできますか?

RAZOR構文を使用してこのテンプレートをレンダリングすることは、値がクライアント側にしかないため不可能です。 jQueryテンプレートなどのように。

ヘルパーで今
@Html.Template(<this somehow indicates it's the start of my string> 
    <div>Hello {{= NameOfHomePlanet }}</div> 
    <div>And welcome to a second line!</div> 
</this somehow indicates it's the end of my string>); 

public static Template(this Html html, string template) 
{ 
    // tmplate == " <div>Hello {{= NameOfHomePlanet }}</div>\n" 
    // + "<div>And welcome to a second line!</div>"; 
} 

に渡されている最も外側の架空のタグの間のHTMLをもたらすことは理想的には、TJEビューから、このようなとして渡されます

Templateという名前のHtmlヘルパーの最初の引数として使用します。

私が演奏するには、うまくいく構文を得ることができませんでした。これは可能ですか?

+0

HTMLにはあらかじめ定義された構造がありますか?私はあなたが必要とするそれぞれの使用のために異なるHtmlHelperを作成することをお勧めします。たとえば、 "NameOfHomePlanet"とその他の情報をパラメータとして渡す "PlanetWelcome"を処理するHtmlHelperを1つ考えてみましょう。 – Romias

答えて

0

私はこれを行うことはお勧めしませんが、あなたは確かにそれはあなたの質問は非常にあいまいであるため、伝えるのは難しいということを越えて

@{ 
    string someHtml = "<div>" + model.NameOfHomePlanet + "</div>"; 
} 

@Html.CustomHelperTemplate(someHtml) 

できました。

+0

より具体的には、メイントピックを更新します。私はそれがどのように曖昧であるか見ることができます。 –

関連する問題