【質問】ASP.NETスレ Part6【雑談】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2009/09/01(火) 20:06:04ID:???Microsoft .NET Frameworkの一連のテクノロジの一つです。
技術の移り変わりの早い分野ですので、みんなで質問、相談しつつ、より理解を深めていきましょう。
●ASP.NET関連サイト
マイクロソフトASP.NETデベロッパーセンター
http://msdn.microsoft.com/ja-jp/asp.net/default.aspx
ASP.NETオフィシャル(英語)
http://www.asp.net/
VisualStudioホームページ
http://www.microsoft.com/japan/msdn/vstudio/
SQLServerホーム
http://www.microsoft.com/japan/sqlserver/2005/default.mspx
IISオフィシャル(英語)
http://www.iis.net/
ASP.NETにAJAX技術を取り入れるASP>NET AJAX(英語)
http://www.asp.net/ajax/
ASP.NETにMVCアーキテクチャを取り入れるASP.NET MVC(英語)
http://www.asp.net/mvc/
ASP.NETでのお役立ちの定番サイト
http://www.atmarkit.co.jp/channel/aspnet/aspnet.html
●前スレ
【質問】ASP.NETスレ Part5【議論】
http://pc11.2ch.net/test/read.cgi/php/1232671611/
0567nobodyさん
2009/12/15(火) 08:31:08ID:???え?ASP.NET AJAXで解決できることを初めからわかってたと?
ならなんで質問してくるんだ?ここで。
いいからASP.NET AJAXを使ってみなさいって。
使えばわかるから。
ああこういうことなんだなって。
UpdatePanelとかの文字が出てこなかったからって指摘したことが、
顔真っ赤になるぐらい恥ずかしいことだってw
0568nobodyさん
2009/12/15(火) 10:29:58ID:???しかし、最近のゆとりは本当にひどいな
わざわざ、コントロールの使い方まで教えて貰わないと、教えたことにならないなんて
UpdataPanelなんてAJAX必須コントロールなんだから、教える必要なんてないだろ
それに、記事のコーディングレスなんてキャッチフレーズだ
そんなの信じるほうが狂ってる
おれも、AJAX利用すれば解決、後は普通に実装しろって返答しただろうな
あぶねーw
親切心から返答してるのに文句いわれちゃたまらねぇわ
0569nobodyさん
2009/12/15(火) 10:38:41ID:???0570nobodyさん
2009/12/15(火) 11:51:59ID:???0571nobodyさん
2009/12/15(火) 12:27:46ID:???0572nobodyさん
2009/12/15(火) 14:57:55ID:???>はい、ダウト。
>はい、ダウト。
おゆとり様かっけーw
0573nobodyさん
2009/12/15(火) 16:00:43ID:???GridViewのボタンクリック→ModalPopupExtenderでPanel表示
Panel上のボタンクリック→Panel閉じる
ってやってみたんだけど、ダイアログとして表示したPanelのボタン押して、
閉じようとすると同期PostBackしてしまうな。
別途、ただのボタンを設置して
ボタンクリック→ModalPopupExtenderでPanel表示でやると、
ポストバックせずただPanelが消える。
なんでだろ?
0575nobodyさん
2009/12/15(火) 17:33:29ID:???0576nobodyさん
2009/12/15(火) 18:19:44ID:???UpdatePanelをダイアログとして表示するPanelで囲み、
もう一つのUpdatePanelでそれ以外の部分を囲んでやると、
Postせずにデータを取得し、さらにPostせずにダイアログを非表示にできるっぽい。
実際のコーディングはこれだけ。
UpdatePanel.Update()も不要だし、ModalPopupExtender1.Show()は
ToolKitのサーバコントロールのメソッドなので、
事実上にはASP.NET AJAXのコードは一切書かなくていい感じかな。
//GridViewの行に設置されたボタンをクリックしたときに実行されるメソッド
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
//クリックしたGridViewのボタンの行を取得
int rows = int.Parse((string)e.CommandArgument);
//表示する詳細データの取得
//--ここで実際には、取得した行からID等を取得し、詳細データを取得する--//
//詳細データをコントロールに設定する
this.Label1.Text = DateTime.Now.ToString();
this.Label2.Text = rows.ToString();
//ダイアログの表示
this.ModalPopupExtender1.Show();
}
0577nobodyさん
2009/12/15(火) 20:30:29ID:???wwwwwww
ただ、「普通に実装」しただけで、できてるじゃん
昨日、あんだけレスしてた人が、まったく無反応なのにも笑えるwwww
0579nobodyさん
2009/12/15(火) 21:19:59ID:???0580nobodyさん
2009/12/15(火) 22:02:16ID:???画像を1行に1つ表示して選択させることはできるということは分かったのですが、
見た目を、例えば、チェックボックスと画像の対を3列×4行とかにすることはできるのでしょうか?
0581nobodyさん
2009/12/15(火) 22:11:12ID:???ここまでの奴はホント久々に見た。
0582nobodyさん
2009/12/15(火) 22:24:13ID:???もう一人いたよな
自分の不勉強を棚に上げて教えてくれ、ソースを示せの一辺倒だったやつ
0583nobodyさん
2009/12/15(火) 22:29:20ID:???普通にAJAX導入厨はスルー推奨
0584nobodyさん
2009/12/15(火) 22:33:43ID:???せっかくレポートしてくれた>>576のレスを読んだ?
AJAX使えばできるのは事実。
そこまでして自分が無知だったことを隠したいの?
0585nobodyさん
2009/12/15(火) 22:58:21ID:???○○したいのですが、どうすればいいですか?
↓
普通にAJAXを使えばできるよ?
↓
普通じゃわからない。ちゃんと返答すべき。
↓
分からないも何もAJAXを使えばわかるよ・・・
(ソースコードを書けとでもいうのかよ・・・)
↓
参考となるソースコードを載せたサイトが見つかる
↓
ほらAJAX使えばできるじゃん
↓
AJAXで使うコントロール名すら教えてくれなかった
それに使うメソッドも教えてもらっていない
そんなの教えたとは言わない。
しかもお前らはuasgdbwwsd.\.awl;lds;;
AJAX導入厨はスルーすべき
↓
(何この人・・・)←いまここ
0586nobodyさん
2009/12/16(水) 00:01:19ID:???0587nobodyさん
2009/12/16(水) 00:09:43ID:???0588nobodyさん
2009/12/16(水) 00:16:12ID:???お前さ、いい加減ウザイから消えろって言われてるのが分からないの?
0589nobodyさん
2009/12/16(水) 00:18:51ID:???お前だろ
0590nobodyさん
2009/12/16(水) 00:33:31ID:76TvUAig>>580
ListView使えば普通にゲフンゲフン
0592nobodyさん
2009/12/16(水) 00:49:11ID:???>>591
アドバイスありがとうございます。
GridViewでテストページを作成して実験に入ろうと思います。
迷ったときには、また、よろしくお願い致します。
0594nobodyさん
2009/12/16(水) 01:04:04ID:???普通にGridView置いて、GridViewのイベントをフックして画像とチェックボックスを置くだけじゃん。
それ以外にどんな書き様があるの?
0595nobodyさん
2009/12/16(水) 01:06:45ID:???Repeaterを使う選択肢はないのかな?
GridViewとかListViewとかは便利だけど応用が利かない事も多い。
Repeaterはベーシックなコントロールだから、
自分で作り込めばいろいろなことができるし、
あれこれ苦労して他のコントロールで実現するより
すっきり実現できることも多いよ。
0597nobodyさん
2009/12/16(水) 01:09:50ID:???GridViewを利用してチェックボックスと画像を表示するのは出来そうなのですが、
それを3列×4行のようにして、ページングも出来るようにするのは、ごりごりに
コードを書かないとだめなのでしょうか?
それとも、GridViewコントロールのフィールドを工夫するだけで出来るのでしょうか?
0598nobodyさん
2009/12/16(水) 01:12:39ID:???ごりごりに書かないとできません。
そういうことをやりたければListViewを使います。
なんか頭のおかしなのがウソ書いてるせいでわかりづらくなってるけど。
0599nobodyさん
2009/12/16(水) 01:17:45ID:???>そういうことをやりたければListViewを使います。
がーん。私のところの開発環境が2005なので、ListViewがありません…。
バージョンアップするか考えてみます。
ありがとうございます。
0600nobodyさん
2009/12/16(水) 01:22:10ID:???DataListでも似たようなのできたと思うよ
http://msdn.microsoft.com/ja-jp/library/cc439979%28VS.71%29.aspx#pdc_aspplus_topic4
0601nobodyさん
2009/12/16(水) 01:25:19ID:???貴方がお偉いことは重々分かりましたから。
>>599
ListViewはNET3.5以上じゃないと使えないから。
とりあえずRepeaterでいいんじゃない?Repeaterのほうが、最終的なHTMLを
意識しながら作りやすいと思うよ。
ページ換えは面倒かもね。元データがDataTableなら、ViewのRowFilter駆使
してページ単位で切り出す感じかと。
0602nobodyさん
2009/12/16(水) 01:27:27ID:???0603nobodyさん
2009/12/16(水) 01:33:42ID:???DataListのサンプル?ページ見ました。
>>601
Repeaterは使ったことがないのでググってみます。
たぶん、DataListもRepeaterもページングを自分で書かないとだめそうですね。
2008にバージョンアップするのが早い感じがしてきました。
0604nobodyさん
2009/12/16(水) 01:34:30ID:???実は判ってないか、質問が理解出来ていないかのどっちか。
0605nobodyさん
2009/12/16(水) 02:47:29ID:???列数も行数も固定なら、俺ならRepeaterすら使わないでやるかも
回しても4回か12回だしな。それぐらいなら自分でコントロールを配列に入れて処理する
どっちにしろページング周りは作りこみだしな
0606nobodyさん
2009/12/16(水) 03:36:52ID:???4行固定という訳ではないんですが、画像(サムネイル)のサイズが決まっていないので
だいたい、4行分しか領域がないかな?と思ったもので。
0607nobodyさん
2009/12/16(水) 14:27:42ID:???Repeaterでページングなんていつかやるだろうし、
いちど作れば使い回しできるし。
0608nobodyさん
2009/12/16(水) 22:08:23ID:???ASP.NETとAJAXって違いなんですか?
ASP.NETの中でもJAVASCRIPT使ってますよね?
0609nobodyさん
2009/12/16(水) 22:30:47ID:???ASP.NETもAjaxも分からない ○
0610nobodyさん
2009/12/16(水) 22:36:43ID:???ASP.NETというのは、フレームワークの一種で、
Windowsでプログラムを組むのに便利なライブラリと、
サーバサイドアプリケーションを作るのに便利に仕組みを統合したものの総称。
Ajaxとは、主にJavaScriptとxmlを使用したhttp通信を利用して、画面遷移をせず、
動的に画面を変更させる仕組みの総称。
xmlを利用したhttp通信(Webサービスの一種)はAjaxの重要技術で、
>>566は無関係と書いてるけど実際には間違い。
もっと掻い摘んでいようと、
ASP.NET サーバサイドアプリを作るための便利な仕組み
Ajax技術 画面遷移せずに(サーバからデータを取得し)画面を動的に変更する仕組み
ASP.NET AJAX サーバサイドアプリを作るためのライブラリにAjax技術を取り込んで、
画面遷移せず非同期に画面を変更する仕組み。ASP.NETにAjax技術を取り入れたもの。
という感じ。
0614nobodyさん
2009/12/16(水) 23:10:10ID:???0616nobodyさん
2009/12/17(木) 00:05:40ID:???正確には、toolkitの導入が必要なわけで。AJAX≠toolkit
0617nobodyさん
2009/12/17(木) 00:17:32ID:???それも間違い
あくまで「モーダルダイアログみたいなことをしたい」というのが要求定義。
それを実現できる方法として、ModalPopupExtenderを例に挙げたたが、これを仕様してとは一言も言ってない。
従って同じようなことができれば、問題ないわけで、代替手段はいくらでもある。
例えば、GridViewの下にDetailsViewを設置して詳細を表示し、その他のボタンをEnabled=Falseにするとか、
MultiViewを利用してViewを入れ替えでGridViewと詳細表示を入れ替えるなどが可能、
同様にPanelを利用してCSSのレイヤーを設定することで画面中央に表示させ、
必要ないサーバコントロールを非表示にするなど方法はいくらでもある。
あくまで要求定義の実現のためにModalPopupExtenderを使う必要はないわけで、
ModalPopupExtender導入が必要というのはまやかし。
従って、AJAXさえ導入すれば出来る。
0618nobodyさん
2009/12/17(木) 00:26:28ID:???0619nobodyさん
2009/12/17(木) 01:23:54ID:???なにかいじる度、ビルドで2分近く食われる。
ビルド時間ってみんなそれ位?
0620nobodyさん
2009/12/17(木) 01:38:47ID:???>MultiViewを利用してViewを入れ替えでGridViewと詳細表示を入れ替えるなどが可能、
>同様にPanelを利用してCSSのレイヤーを設定することで画面中央に表示させ、
>必要ないサーバコントロールを非表示にするなど方法はいくらでもある。
これのどこにAJAX使ってんの?
0621nobodyさん
2009/12/17(木) 01:59:29ID:???0622nobodyさん
2009/12/17(木) 02:11:01ID:???0623nobodyさん
2009/12/17(木) 02:27:00ID:???AJAX使ったことがないの丸わかり。
えーと、AJAX導入してるから使ってます。
0624nobodyさん
2009/12/17(木) 02:56:58ID:???つまり「AJAXを導入すれば出来る」と言う回答も大嘘で「別にAJAXを使わなくたって出来る」が
正解な訳ですねわかります
0625nobodyさん
2009/12/17(木) 02:57:46ID:???0626nobodyさん
2009/12/17(木) 02:58:30ID:???0627nobodyさん
2009/12/17(木) 03:04:37ID:???それではAJAXを使って、データを取得するという要求に反します。
>475 名前: nobodyさん [sage] 投稿日: 2009/12/13(日) 00:26:25 ID:???
>AJAX使って、クリックされたタイミングでデータを取得してページを部分書き換えしたいということです。
はい。論破。
↓次の言いがかりどうぞ。
0628nobodyさん
2009/12/17(木) 03:15:41ID:???0629nobodyさん
2009/12/17(木) 03:20:46ID:???というレスがケロンパ君から帰ってくるに100ケロンパ
0630nobodyさん
2009/12/17(木) 03:31:23ID:???0632nobodyさん
2009/12/17(木) 03:53:00ID:???可能不可能で言うなら、別にASP.NET AJAXやToolKit入れなくたって
普通に(笑) Javaスクリプト書けばできるんですが
AJAXを導入って、どういう意味で言ってるんですか?
0633nobodyさん
2009/12/17(木) 09:46:00ID:???>
>>475 名前: nobodyさん [sage] 投稿日: 2009/12/13(日) 00:26:25 ID:???
>>AJAX使って、クリックされたタイミングでデータを取得してページを部分書き換えしたいということです。
つまり、お前の中には質問者が最初からAJAX使用を念頭においてたと言う認識
はあるわけで
>>AJAXで実現できるのは初めからわかってる
>はい、ダウト。
>発言のどこを見れば、AJAXで実現できると初めからわかってるんだ?
というのは全く矛盾する発言だし、そもそも
Q: AJAXを使ってデータを取得したい
A: AJAXを導入すれば普通に出来ます。
と言う回答は頭が悪いと言うほかない。
0634nobodyさん
2009/12/17(木) 10:28:15ID:???実は本人はASP.NET AJAXやToolKitについてはほとんど知らないんだよ
だから突っ込まれると、普通にやればできるとか
お前らAJAX知らなかったんだろとかしか言えないと
かわいそうな人なんで、もうそっとしておきましょう
0635nobodyさん
2009/12/17(木) 11:57:02ID:???AJAX加減馬鹿は放置徹底
0637nobodyさん
2009/12/17(木) 13:28:18ID:???>>632
AJAXを導入なんて言ってないだろ。ASP.NET AJAXを導入とは言ってるみたいだがw
>>633
>A: AJAXを導入すれば普通に出来ます。
はいはい捏造捏造。
「ASP.NET AJAXを使えばできる」とは書いてあるが、AJA導入できますは作文だ。
意図的にASP.NET AJAXとAJAXを混同させて撹乱しようとしているだろ。
>>634
これだから教えて厨は困る。ガキじゃないんだから自分で調べろよ。
お前の言ってる理屈はこうだw
TextBoxに現在の日付を表示する方法を教えて下さい
→TextBoxにDateTime.Nowを表示させれば普通にできるよ。
→TextBox.TextやDateTime.Now.ToString()を教えていない。本人はTextBoxもDateTimeもほとんど知らない!!
→お前以外の人間全員唖然
0638nobodyさん
2009/12/17(木) 13:38:54ID:???本当に、ASP.NET AJAXを使ったことが、ないのではないだろうか
0639nobodyさん
2009/12/17(木) 14:46:11ID:???ウザイ
氏ね
0641nobodyさん
2009/12/17(木) 14:55:06ID:???→TextBoxにDateTime.Nowを表示させれば普通にできるよ
こんな回答ならいいんだがな
お前は自分がどう思ってるか知らんが
.NET Framework使えばできるよ 的回答しかできてないんだよ
別にお前に教えてもらわなくても、たぶんお前に突っ込んでるやつらは
お前よりASP.NET AJAXについて詳しいよ
教えてって言ってるんじゃなくて、お前は無知なんだから
中途半端な知識でしゃべるなって言ってるんだよ
0642nobodyさん
2009/12/17(木) 15:27:45ID:???最後の1行までと、最後の1行と、どうつながるの?
もしかして俺の思ってるAJAXとは違う定義で書いてるの? >617
0643nobodyさん
2009/12/17(木) 21:09:36ID:???>.NET Framework使えばできるよ 的回答しかできてないんだよ
ASP.NET AJAXって、もう「ほとんど」使えば実現できますじゃん。
マジでやってみればわかるよ。やらないからわからないだけだと思うけど。
有名サイト様も、コーディングレスで実装できる、プログラミングなしでAjax化と太鼓判。
ASP.NET AJAXならコーディングレスでAjaxを実装できる(前編)
http://itpro.nikkeibp.co.jp/article/COLUMN/20070817/279763/?ST=webdesign
ASP.NET AJAX ファーストルック
−ASP.NETアプリケーションをプログラミングなしでAjax化−
http://www.atmarkit.co.jp/fdotnet/special/aspajax/aspajax_01.html
それに本当に大事なのはScriptManagerのほうだろ。
上の参考サイトのソースコードにUpdatePanel.Update()があったから、
必要なコントロールとして例をあげてるだけだと思うが、
本当に使ったことある人ならScriptManagerをほうを先に指摘すると思うぞ。
いいか?使えばわかる。
0644nobodyさん
2009/12/17(木) 21:13:34ID:???お前の言ってることはこういう事だ。
売上伝票といった帳票を印刷したいのですがどうすればいいですか?
→個人で作るのは難しい。帳票印刷ソフト(製品名)とかの帳票ソフトを使えば普通にできるよ。
→それでは帳票印刷ソフト(製品名)の使い方を教えたことにならない。本人は帳票ソフト(製品名)をほとんどしらない!
→お前以外全員唖然
そういうコンポーネントやアドオンの存在すら知らない人なんだから、
その存在だけ教えれば十分だろ。
あとは、その存在を知った質問者が、その仕組みについて勉強すればいい。
勉強すれば、ScriptManagerやUpdatePanelも「絶対に」知る事になるからわざわざ教える必要なんてない。
自分で勉強せずに、すぐに実現できるソースコードを提示してくれなかったからといって、
逆切れして発狂する人間のことを「ソースくれ厨=教えてクレ厨」という。お前のことだ。
0645nobodyさん
2009/12/17(木) 21:44:41ID:???0646nobodyさん
2009/12/17(木) 21:52:08ID:???知らないテクノロジを教えて貰っただけでもありがたいのに、
もっと詳しく教えないからと逆切れするなんて・・・
0647nobodyさん
2009/12/17(木) 21:55:30ID:???今度から鳥とコテを付けるように。
0648nobodyさん
2009/12/17(木) 21:57:24ID:???自演がばれちゃうからな
0649nobodyさん
2009/12/17(木) 22:18:10ID:???ASP.NET AJAXはそれこそほんとにコーディングレスだろ
何が不満なんだ?
ほんとに使ったことがないのか?
0650nobodyさん
2009/12/17(木) 23:30:23ID:???0651nobodyさん
2009/12/17(木) 23:33:33ID:???これだからゆとりは嫌いだよ
0652nobodyさん
2009/12/18(金) 00:57:52ID:???0653nobodyさん
2009/12/18(金) 13:46:10ID:???0654nobodyさん
2009/12/18(金) 18:28:47ID:???2chで教え方が悪いと逆切れするとかもうね
0655nobodyさん
2009/12/18(金) 18:39:12ID:???0656nobodyさん
2009/12/18(金) 18:46:42ID:???0658nobodyさん
2009/12/19(土) 23:43:39ID:???0659nobodyさん
2009/12/20(日) 02:24:11ID:???本来表示されるべきウィンドウじゃない方にもう片方のレスポンス返ってくること無い?
完全にURLと表示されるべき内容が食い違ってるんだが原因がさっぱりだ
ウィンドウ1がA.aspxにポストバック、ウィンドウ2がB.aspxに非ポストバックでアクセス
→ウィンドウ1と2両方がB.aspxの内容に
っつー現象なんだが
0660nobodyさん
2009/12/20(日) 02:32:35ID:???別ウィンドウで開いたらそっちでは画面遷移せずMultiViewとかで切り替えで対処した。
0661nobodyさん
2009/12/20(日) 03:18:55ID:???ブラウザにかかわらず発生するのか?
俺はそんな現象にあたったことないが、ホントにそうなるならちょっと気になる
0662nobodyさん
2009/12/20(日) 12:05:58ID:???ポストバック時に、他のページのJavaScriptのデータを取得して、
サーバにPostしちゃうとしか考えられないような
B.aspxがA.aspxからTargetが_Blankや固定名などで表示されていて、
そちら側でClientScriptがA.aspxのwindowオブジェクトを取得して
何か操作しているとかいうことはない?
0663nobodyさん
2009/12/20(日) 12:31:07ID:???IEを開いてる状態で「New Window」でもう一枚画面を開くと、両方とも同じSessionIDで
処理される。同一プロセスでIEが動いてるから回避不可。
IEのアイコンクリックで別途画面を開いても問題が生じるなら別件だけど。
0664nobodyさん
2009/12/20(日) 12:48:04ID:???でもSessionIDが同じだからといって、ポスト先のURLまで変わってしまうもんなの?
0665nobodyさん
2009/12/20(日) 15:37:17ID:???>SessionIDが同じだからといって、ポスト先のURLまで変わってしまうもんなの?
サーバでセッション内容で何かやってれば不都合がでる可能性はあるが
_勝手に_違うページを表示するのはあり得ない
同一セッションの複数ウィンドウは普通にやってるがそんな現象に遭遇した事はない
非ポストバックっていうのは、ポストバックじゃなくて初回のgetって意味か?
俺も>>662と同意見で、クライアントスクリプトがおかしなことしてるんじゃないかと思う
自分でスクリプト書いてないなら、特定のコントロール使ったら起こるとか
ASP.NET AJAXとかControlToolkitとか使ったら発生するとか条件ないか?
ページ変遷あたりのコードを不適切に実装しなければ起こり得ないと思うんだが
現象の起きるコードとか出せないか?
0666nobodyさん
2009/12/20(日) 21:06:17ID:???同時にリクエスト投げるというのも、漠然としていてよくわからないよね
■ このスレッドは過去ログ倉庫に格納されています