これに対処するにはいくつかの方法があります。
1.サーバー側のすべてを実行します。 ajax(旧アトラス)ツールキットのモーダルdilogを使用することができます。それを更新パネルの中に入れてください。トリガーを作成し、そのトリガーでイベントを指定します。これは、dbへの呼び出しを行うときに行われます。それは一度しか起こりませんし、正確にあなたがそれをしたいときにあなたはコントロールするでしょう。
2.クライアントサイドのajaxを使用します。 私は、UpdatePanel(パフォーマンス)の使用に伴うオーバーヘッドが多いので、この方法をお勧めします。 jQuery UI Modal Dialogをそのまま使用し、クライアントサイドイベントを使用して、オープン時にフックします。次に、Webサービスにアヤックスの呼び出しを行うにはどちらかだろう(aspxページ内でホストすることができます)か、に.get操作を行うことができます。
$.ajax({
url: url,
data: data,
success: success,
dataType: dataType
});
または
$.get('ajax/MyDbRecord.aspx', function(data) {
$('.result').html(data);
alert('Load was performed.');
});
その後、あなたのaspxページ単純にできます:
Response.Write(MyRepository.GetDetail(q => q.ID == 1234).ToString()); Resonse.End();
もちろん、モーダルダイアログにそのデータを単純な文字列として表示するだけで、ビジネス側でオブジェクトを調べる必要がない場合はもちろんです。
ここでは詳細に説明した両方のAPI:あなたが実際にあなたがDBから取得している詳細レコードでカスタム何かをしたい場合は今 http://api.jquery.com/jQuery.get/
、あなたがgetJSONを使用してに見たいと思うかもしれません。ここ より多くの例:
http://viralpatel.net/blogs/2009/04/jquery-ajax-tutorial-example-ajax-jquery-development.html