ポップアップ ウィンドウに詳細を表示する HTML 形式にレンダリングする必要があるドメイン エンティティが多数あります。
私はこのようなことをしてうれしいです:
Product product = new Product(...);
product.ToHtml(); // or: HtmlRenderer.Render(Product);
しかし、私の主な問題は、後ろからこれを行う方法です。私は3つの異なる答えを持っています:
1. コードでレンダリング:
ToHtml メソッド (C#) 内で Html をレンダリングするためのコードを簡単に記述できます。問題は、静的すぎることです。ヘッダーを中央に少し移動したい場合は、コードを変更する必要があります。さらに、C# で Html のインデントを読み取るのは非常に困難です。
2. XSL の使用:
XSL ファイルは Html テンプレートを簡単に管理でき、XSLT を使用して XML ファイルをドキュメントの適切な場所に変換できます。他の誰かによって既に書かれたパーサー (構文を学ぶ必要があるだけです) ** このためには、各オブジェクトが Xml にシリアル化できる必要があります。オブジェクトが変更された場合 -> Xml が変更されます --> xslt も変更する必要があります ** これにより、HTML を簡単にインデントするオプションも提供されます。たとえば、CSS 機能を追加したり、HTML デザインを変更したりします
3. 他のテンプレート エンジンを使用する場合:
独自の C# -> Html テンプレート エンジンを記述して、ファイル (*.template) からテンプレートを読み取り、リフレクションを使用してテンプレートの適切な場所に適切なプロパティを挿入します。** このソリューションには、考えられる多くの問題があります。たとえば、構文はどのようにすべきか? このことは大丈夫ですか? %Name% %Description% と、配列をどのように扱うことができますか? ** 既存のエンジン (Brail または T4-Templating) を使用できますか?
あなたは何を好むか?あなたは良いエンジンを知っていますか?今のところ、私は 2 番目のソリューションを好みますが、非常に遅くなります。
ありがとう