0

(Wordテンプレートとサードパーティライブラリを使用して)レポートを生成し、HTMLで文字列を返すサービスがあります。このHTMLは優れていませんが、この文字列で正しくフォーマットされています。

このHTMLをページに表示する必要があります-フォーマットはそのままです。現在行っているのは、ASP.netLiteralのテキスト要素をこの文字列に設定することです。

これは機能しますが、HTML文字列がわずかに再フォーマットされていることに気付きました。ほとんどの場合、新しいCSSクラスの束と、HTMLの新しいスタイル要素が生成されたように見えます。このHTMLは、返される文字列には存在しません。私はこれをすべて元に戻すことができましたが、もっと良い方法があるかどうか疑問に思います。

ページ自体が何かを変えていると思います。

この生のHTMLをユーザーに表示するための最良の方法は何ですか?このページには他にもいくつかのコントロールがあるため、Response.Write(string)を直接使用することはできません。

4

3 に答える 3

0

リテラルコントロールがあなたが説明したように動作することを聞いたことがなく、使用するたびにそのように動作することもありませんが、これまでこのようにhtmlを出力しようとしたことはありません。
別の方法として、コードビハインドファイルのパブリックページプロパティにhtmlを割り当ててから、aspxファイルのサーバー側スクリプトタグを使用して、このプロパティの内容を表示することもできます。

<%=HTMLString %>
于 2010-06-16T12:27:39.187 に答える
0

リテラルコントロールはテキスト値(AFAIK)をフォーマットしないので、それは別のものだと思います。おそらく、ページ出力を変更している可能性のある応答フィルター(Request.Filter)ですか?別の可能性としては、包含コントロールがカスタムレンダリングの子コントロール(つまりリテラル)の値を変更している可能性があります。

于 2010-06-16T12:32:52.743 に答える
0

それは私自身の間違いであり、サードパーティのライブラリの設定でした。CSSをいじる前に、比較ページを保存していました。しかし、あなたの有益な答えをありがとう-私は私の心を失っていると思いました!

于 2010-06-16T13:13:30.253 に答える