1

HTMLパーツとコードビハインドを含む「通常の」ascx-Pageを取得しました。これらの要素はすべて、通常の状態 (動作) で表示される必要があります。

ここで、ページ zu のレンダリングを異なるものにする request-parameter を設定できるようにしたいと考えています。次に、そのページの情報を人間が読める形式ではなく、マシン用に送信します。

 string jsonProperty = Request["JSonProperty"];
                if (!string.IsNullOrEmpty(jsonProperty))
                {                    
                    Response.Clear();
                    Response.Write(RenderJSon());
                  //  Response.Close();
                    return;

このコードは Page_PreRender 内にあります。今私の問題は次のとおりです。文字列はブラウザに正しく送信されますが、その後も「標準」の html コンテンツがレンダリングされます。

「Response.Close();」を削除すると コメント 「ERR_INVALID_RESPONSE」を受け取りました

追加のページを作成せずにこれを解決する方法の手がかりはありますか?

4

4 に答える 4

1

追加してみるResponse.End()

現在バッファリングされているすべての出力をクライアントに送信し、ページの実行を停止して、EndRequest イベントを発生させます。

また、@Richardが言ったように、追加します

context.Response.ContentType = "application/json";
于 2012-06-11T12:54:08.127 に答える
1

ContentType次のように toを設定して、応答application/jsonを'ing しようとしましたか?End

string jsonProperty = Request["JSonProperty"];
if (!string.IsNullOrEmpty(jsonProperty))
{                    
    Response.Clear();
    Response.ContentType = "application/json";
    Response.Write(RenderJSon());
    Response.End();

    return;
}    
于 2012-06-11T12:54:41.820 に答える