ASP.NET MVC用のビューエンジンとfor-in-oneの "タグスープ"に対するいくつかの批判は、ループとそのようなもの。ASP.NET MVC:XMLにLINQを使用して(X)HTMLをレンダリングする
代替または補完は、HTMLインジケータを使用することでした。これはインラインメソッドコールです。
今日、私はASP.NET MVCのHTMLヘルパーを見ると、TagBuilderというクラスを使用しています。
私の提案はXMLに使用LINQ強く型付けされたと正しくフォーマット取得するために(X)HTMLにある:どこが新しいのできることは、Webフォームで強く型付けされたコントロールと同様ですので、
XDocument output = new XDocument();
XElement root = new XElement("div",
new XAttribute("class", "root_item"));
XElement iconImage = new XElement("img",
new XAttribute("src", ResolveUrl("~/image.gif")),
new XAttribute("alt", "This is an image"));
XElement link = new XElement("a",
new XAttribute("class", "link"),
new XAttribute("href", "http://google.com"),
new XText("Link to Google"));
root.Add(link);
root.Add(iconImage);
output.Add(root);
私はそれが好きボタンを押して、別のコントロールのControlコレクションに追加します。
これに明らかな問題や制限はありますか?
私は個人的にはTagBuilderのファンではなく、実際にはstring.Format()以外にも自分自身を構築するためにほとんどの場合に頼っています。あなたの方法論が好きですが、なぜTagBuilderを使いたいのですか?あなたはTagBuilderで同じことをすることができます。 –