12

C# プロジェクトでStringTemplateを使い始めたところです。ドキュメントを調べましたが、この単純なシナリオを実装する方法が見つからないようです:

単純なビジネス オブジェクト (注文としましょう) のリストがあり、それらを HTML テンプレート内の UL タグ内に表示したいと考えています。

したがって、私の .st テンプレートは次のようになります (疑似コード):

<html> some text <ul>[Order template]<li>[Order name here]</li>[/Order template]</ul></html>

出力を次のようにします。

<html> some text <ul><li>Order 1</li><li>Order 2</li>...</ul></html>

StringTemplate を使用してこれを機能させる方法がわかりません。何か案は?

4

2 に答える 2

29

次の構文を使用する必要があります。

<ul>
    $orders: {order|
        <li>Order $order.OrderId$</li>
    }$
</ul>

この機能に関するドキュメントを見つけるのは非常に困難です。ここでいくつかの情報を見つけました(パイプ記号 | を検索してください)。

于 2009-05-11T09:52:31.107 に答える
0

それは私にとってもうまくいきます。Antlr から StringTemplateGroup として StringTemplate を呼び出す場合、構文は少し異なります。$ を <> に置き換えます。

group DTO;

assign1(m, attributes) ::= <<
package demo;
import java.io.Serializable;

public class <m> implements Serializable {
    public <m>() {
        super();
    }

<attributes : {attribute |
protected <attribute.type> <attribute.name>;

public <attribute.type> get<attribute.name>() {
    return <attribute.name>;
}

public void set<attribute.name>(<attribute.type> <attribute.name>) {
    this.<attribute.name> = <attribute.name>;
}
}>
}

>>
于 2010-03-23T17:17:08.617 に答える