【質問】ASP.NETスレ Part2【議論】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/03/22(火) 17:32:11ID:???Part1 - 【質問】 ASP.NETスレ 【議論】
http://pc5.2ch.net/php/kako/1040/10406/1040698263.html
0662640
2006/06/03(土) 17:55:51ID:???おおおおおっ!!!!!
うごいたーーーーっ!!!!!
でも、ボタンを押してテーブルの中身を構成しているときは、何で動かないの??
661のコードだと、ページをロードするたびに、テーブルのrowsコレクションに3行づつどんどんrowが増えて行かないのはなぜ?
テーブルオブジェクトは生成しなおしてないから、残りそうなのに。
どんどん増えない = postBack後、post時のrowオブジェクトが残らず消えているわけだから、tBtnイベントの取得もできなさそうなんですが、なぜかできている。
自分んちの晩御飯はいつも冷凍食品なのに、自分の食べる時はいつもオカズが冷えてるのぐらい不思議です。
ウェブテーブルオブジェクトも、うちの嫁さんも、そーゆーものともう割り切っちゃううしかないんでしょうか?
0663640
2006/06/03(土) 18:00:09ID:???なにより、661さま、ありがとうございますっ!!!
尿簿の冷え切った冷食晩飯の三千五百倍有り難く思っています。
0664nobodyさん
2006/06/03(土) 18:22:28ID:???>何で動かないの??
Button1を押したとのイベントの起こる順
Page_Load
↓
Button1_Click
tBtnを押したときのイベントの起こる順
Page_Load
↓
tBtn_Click
よって、Button1_Clickのところにテーブルコントロールとボタンコントロールを記述しても
Page_Load
↓
tBtn_Click
の時にはテーブルとかは表示されない。
0665nobodyさん
2006/06/03(土) 18:25:05ID:???Pageを読み込むたびにオブジェクトは破棄される。
0666nobodyさん
2006/06/03(土) 22:41:06ID:???0668MSDN
2006/06/03(土) 22:57:52ID:???サーバー コントロールは、インスタンスの作成および設定のために必要な初期化の手順を実行する必要があります。
このイベント内では、ビューステートの情報はまだ設定されていないため使用できません。
このイベント中は、このサーバー コントロールが子であっても親であっても、
これ以外の他のサーバー コントロールにはアクセスしないでください。
他のサーバー コントロールは、作成されていなかったり、アクセスの準備ができていなかったりする場合があります。
サーバー コントロール イベントの詳細については、「ASP.NET Web サーバー コントロールのイベント モデル」を参照してください。
0669nobodyさん
2006/06/03(土) 22:58:31ID:???0670nobodyさん
2006/06/03(土) 23:46:27ID:???protected int TableRows
{
get { int n;
if (!int.TryParse(ViewState["TABLE_ROWS"], out n)) {
n = 0;
}
return n;
}
set { ViewState["TABLE_ROWS"] = value;}
}
void Page_Load(EventArgs e)
{
AddRows(0, this.TableRows);
}
void Button1_Click(object sender, EventArgs e)
{
int n = this.TableRows;
AddRows(n, n+3);
this.TableRows += 3;
}
void AddRows(int st, int en)
{
for (int i = st; i < en; i++) {
....
}
}
0671670
2006/06/03(土) 23:51:27ID:???Pageとその子コントロールはリクエストの度にイチから作り直しなので、
状態(Tableの行数)はViewStateやSessionなんかに覚えておかないといけない。
確か、昔はOnLoadで追加したコントロールではPostbackが発生させられなかったはず。
.NET 2.0でLoadまでに作れば間に合うように変わったので、事情がない限りLoadで作るのが良いと思う。
InitだとViewState使えないしね。
0672nobodyさん
2006/06/03(土) 23:56:21ID:???0673640
2006/06/04(日) 09:49:59ID:???ウェブテーブルだとなんでページを読み込む度に、内容がリセットかかっちゃうのかが、どーも理解できていません・・・・って、あーーーっ、テキストボックスは内容、テキストボックス自身がポストしてるから残るんじゃん。
ピューステートが色々前のページの情報をポストしているのはしってたんで、勝手に覚えてくれるもんだと思い込んでました。
ちなみに、自分のプログラム履歴
N88-BASIC -> MASM -> TURBO C++ -> (10数年の休眠) -> EXCEL VBA -> VB2005
はっきりいって、今のプログラムは、プログラムを組むというより、人のつくったソフトがずらーっと並んでて、それの使い方がどーのこーのといった感じで・・・。
おっちゃんにはなかなか辛いものがw
みなさん。色々ありがとうございました。
まだ、教えていただいた内容、全てが理解しきれていませんので、これから調べてまいります。
0674nobodyさん
2006/06/04(日) 09:58:06ID:???0675640
2006/06/04(日) 10:06:59ID:???あと、本当はN88の前に、素N-BASICも・・・。もうしじゅうが見え隠れ・・・。とほほ。
0676640
2006/06/04(日) 10:12:20ID:???INT 1B探して、プロテクト外してたころが懐かすぃ
昔のPC板にカエレ!!(・∀・)と言われる前に、もーやめときますw
0677nobodyさん
2006/06/04(日) 10:15:26ID:???0678nobodyさん
2006/06/04(日) 10:16:06ID:???やってた。
だけどそんなことは関係ないと思う。
結局
> (10数年の休眠)
だと思う。年齢とか関係ない。
0679nobodyさん
2006/06/04(日) 10:22:12ID:???俺でも外せたよww
0680670
2006/06/04(日) 12:01:17ID:???知っている人の方がかえって苦労すると思います。
ちゃんと理解するなら、ソース読むのが一番手っ取り早いです。
Reflector for .NETの使用をお薦めします。
0681nobodyさん
2006/06/04(日) 19:09:34ID:???かといってWebやったことが無い人は、
下手にWebを意識せずに作れるおかげで
とんでもない発想をしてくれる。
どっちもなかなかつらい。
0682nobodyさん
2006/06/06(火) 07:18:30ID:???一部にイベントドリブンの原則を破り
非推奨のコードインラインを使ってしまっているが
みなさんはこんな書き方は
絶対にしてないの?
0683nobodyさん
2006/06/06(火) 08:35:36ID:???意味がよく分からないけど、
<% if (a == 1) { %>
<asp:Button .... />
<% } else { %>
<asp:DropDownList ... />
<% } %>
みたいに、場合によって描画する内容を変えるために、aspxファイル中に
分岐を書き込んでしまうような事?
それだったら、たまにやる事がある。
0684nobodyさん
2006/06/06(火) 15:07:01ID:???一行消そうとするとエラーになるんですがどうしたらよいですか?
SqlDataSourceを選んでGridViewに入れ
GridView1.Columns[0].Visible = false;
の場合はエラーも無く出来ます。
Fillしたデータでカラム消すなって事ですか?
0685684
2006/06/06(火) 15:08:35ID:???>>一行消そうとするとエラーになるんですがどうしたらよいですか?
Columns です。
Fillした場合の
GridView1.Columns[0].Visible = false;
はエラーになります。
0687nobodyさん
2006/06/09(金) 07:01:28ID:???enable=trueにしたのですが
trace.axdでみようとするとtrace
enable=trueにしてくださいというエラーが出てしまいます。
ほかになにかしないといけないでしょうか?
0688nobodyさん
2006/06/10(土) 13:42:39ID:???すべて読み込んでから一気に描画するにはASP.NET側で設定変更などで
対応できますか?
それともダミーのtableタグを作ってbody内をひとつのテーブルの
中に入れてしまうのがよいでしょうか?
0689nobodyさん
2006/06/11(日) 00:06:36ID:???ホームページビルダー8をつかってるんだが
aspxは右クリックから編集できないし
読み込むとエラーが出たとかいって最初の行のタグを変なところにもっていってしまったり
aspxなファイルでもちゃんと編集できるHP作成ソフトあったら情報きぼん
0690nobodyさん
2006/06/11(日) 00:41:23ID:???0691nobodyさん
2006/06/11(日) 00:47:31ID:???0692nobodyさん
2006/06/11(日) 20:44:50ID:???HPB8から入るんだったら、Dreamweaverでしょ。
ttp://asp.dataweb.ne.jp/trial/dwmx.htm
ttp://www.adobe.com/jp/devnet/dreamweaver/articles/dotnet_usercontrol.html
取り急ぎ作るときは、PHPもDreamweaverで作るけどな
0693nobodyさん
2006/06/11(日) 20:57:32ID:???Expression Web Designer
ttp://www.microsoft.com/products/expression/ja/web_designer/default.mspx
0694nobodyさん
2006/06/13(火) 14:15:39ID:ajjXJFJvVS2003
言語 VB.NET
上記の環境ですが、ファンクションキーを使用する方法はありますか?
0695nobodyさん
2006/06/13(火) 18:44:49ID:???0696nobodyさん
2006/06/13(火) 20:53:18ID:???ASP.NET2.0なら HostingEnvironment.MapPath でもいいかも。
0697nobodyさん
2006/06/13(火) 20:58:02ID:???フォーム認証などでLoginコントロールを使用した場合、メンバシップを使用すると思うのですが、
このメンバシップのDBはSQLServerしか使用出来ないのでしょうか?
同じテーブルやビューなどの仕組みにすれば、Oracleなどにテーブル張って、
WebConfigでプロバイダを指定すれば良いのでしょうか?
それとも、それとは別にクラスなども何かを継承して作成する必要があるのでしょうか?
また、ユーザやロールなど、独自のテーブル構成でのメンバシップの利用は出来るのでしょうか?
0698nobodyさん
2006/06/14(水) 18:35:25ID:???即座に反映されますか?
どこかにキャッシュが残り反映されないことがありますか?
どうもいくらコピーしても更新内容が反映されないみたいなのです。
本番環境なのでIISの再起動やサーバーの再起動はできないので
それ以外の方法があれば教えてください。
0699nobodyさん
2006/06/14(水) 18:49:23ID:???MSDNを見る限り、
AccessかSQL serverだけのようだけど、
MDBファイルに作成されたテンプレートデータベースを
Oracleに移行して、ODBCでリンクテーブル作れば、
一応、Oracleに切り替えることは可能だと思う。www
http://www.microsoft.com/japan/msdn/net/aspnet/aspnet-membership.asp
0700nobodyさん
2006/06/14(水) 19:52:50ID:???なったんですが、非同期操作を開始するページは、Async 属性が true に設定されていなければならないみたい。
で、このプロパティはデフォでAsync=Falseなんだけど、これをTrueにして他に支障はでないでしょうか?
http://msdn2.microsoft.com/ja-jp/library/sb90y5w7.aspx
0701nobodyさん
2006/06/14(水) 20:12:44ID:???http://www.microsoft.com/japan/msdn/vs05/adonet/async2.asp
>>所定の接続オブジェクトで同期コマンドのみを使用するとわかっている場合
>>は、接続文字列に async キーワードを指定しないか、false に設定すること
>>をお勧めします。 非同期操作が有効になっている接続で同期操作を実行
>>すると、リソースの利用率は著しく増大します。
ってことですね。
同期ADOと混在するページなので普通のSendを使うことにします。
0702nobodyさん
2006/06/15(木) 00:18:57ID:???デフォルト環境であれば、.aspxは即反映する。
.aspx.vbは、いらない子。ビルドしたアセンブリを入れ替えないとダメ。
binフォルダ配下やglobal.asax、web.configが変更されるとWebアプリは再起動する。
State Serviceを利用しているとセッションが継続するので再起動に気付かないかも。
0704nobodyさん
2006/06/16(金) 12:30:50ID:???0705nobodyさん
2006/06/16(金) 15:18:52ID:???0706nobodyさん
2006/06/16(金) 16:49:42ID:???レガシーASPにも使えますか?
0707nobodyさん
2006/06/17(土) 20:04:45ID:???0708nobodyさん
2006/06/28(水) 22:39:53ID:???TabScriptを使いたいのですが、
1.windows2000 SP4+VisualStudio.NET2003+IE6.0SP2
2.windowsXP SP2+Visual Web Developer 2005 Express Edition+IE6.0SP2
1の環境ですと正常に動作するのですが、2の環境では、
なぜかTab Textの内容を、Labelコントロールを横並びにさせたように表示されるだけで
マウスのカーソルにもクリックにも全く反応しません。
一体どこがおかしいのかわからず、行き詰っています。
原因がわかる方がいましたら、ご教授お願いいたします。
0709nobodyさん
2006/06/29(木) 13:22:24ID:???DataSourceとSelectedValueを設定してデータバインドした場合に、
DataSource内にSelectedValueがないと例外を吐いてしまいます。
この例外を起こさないようにしたいのですが、カスタマイズできるでしょうか?
0710709
2006/06/29(木) 13:28:25ID:???カスタムコントロール作ってOnDataBindingを変更しました。
0711nobodyさん
2006/06/29(木) 15:27:36ID:DGXE/7zZ携帯電話の端末識別IDやユーザーIDを取得してくれるようなクラスって無いんでしょうか?
HttpCapabilitiesBaseで端末の種種別やある程度のスペックは取得してくれてるようなのですが。
とりあえず取得したいのは、
・公式コンテンツで発行されるユーザーID
・EzのサブスクライバID
・FOMAカードやUSIMカードのカードID
・端末固有ID
あたりです。
それぞれ、ヘッダから取得する手順は分かっているので自前でクラスは組んだのですが
新方式の端末が追加される時にモバイルWEBなんとかの設定ファイルと
自作のクラスの両方を条件追加するのは無駄な手間なのが問題と考えています。
なのでASP.NETのモバイルWEBなんとかの機能でそのへんのID取得できるとしたらその方が運用は楽かなと思いまして。
0712nobodyさん
2006/06/29(木) 19:08:49ID:fByk/Vi6メールファイルですが、現在動的なテーブルにファイル名を取得し、ファイル名と作成日を表示しています。
Forループを使って1件ずつ取得しているのですが、現在の方法だとファイル名にソートがかかった
状態で表示されています。
やりたい事は、作成日にソートをかけて1件ずつ取得したいのですが、どうにも分からず、先に進みません
↓現在の取得しているソース
For Each FileName In System.IO.Directory.GetFileSystemEntries(Server.MapPath(FolderName), "*.eml")
そもそもこの取得の仕方自体が間違っているのでしょうか?
誰かタスケテorz
0713nobodyさん
2006/06/29(木) 23:07:42ID:???0714nobodyさん
2006/06/30(金) 01:16:06ID:p6Bb5M59DataBinderで検索結果を表示しているのですが、検索結果の総件数も表示したいです。
DataBinderやRepeater、SqlDataSourceにいいプロパティやメソッドがないか調べたのですが、
見つかりません。
みなさんどうしていますか?
Repeaterを使うときの総件数を教えて下さい。
よろしくお願いします。
0716nobodyさん
2006/06/30(金) 19:51:26ID:viJcojGwそこまで複雑なファイルはないので大変そうなら作り直そうかと思っています。
0719nobodyさん
2006/07/01(土) 08:29:35ID:???認証の可否や設定されたユーザやロールによってページを表示させるかどうかが
出来るのは分かったのですが、いわゆる認可?と呼ばれるものをどうしたら良いか分かりません。
やりたい事は、Adminロールを持つか持たないかを判別し、
ロールを持っているユーザだった場合、特定の部分を入力可能にして、
ロールを持っていない場合、テキストボックスを表示するのではなく、単純な表示にしたいのです。
0720nobodyさん
2006/07/01(土) 11:40:00ID:???0721nobodyさん
2006/07/01(土) 11:44:59ID:???0722nobodyさん
2006/07/01(土) 20:34:19ID:???0723nobodyさん
2006/07/02(日) 11:32:45ID:vdUQJtIY御免なさい。
権限やロールを取得することは出来ます。
問題は、その結果を元にどうやって表示させるUIを切り替えるかという事です。
最初は、別ページを作って画面の遷移先を変えてみましたが、
これだとメンテナンスするのに画面の数が多くなってしまいます。
0724nobodyさん
2006/07/02(日) 21:50:45ID:???0725nobodyさん
2006/07/03(月) 02:23:09ID:ZwWxs7gdaspxページでDBから取得したデータをFLASHに渡し、FLASH側では、
LoadVarsのsendAndLoadあるいはloadでデータを受け取りたいのですが。
ご存知の方いましたら、教えていただけないでしょうか。
0726712
2006/07/03(月) 20:09:03ID:???結局別の入れ物・・・と言われ、DataGridに入れるべく奮闘しています。
そしてようやくソートはできました。
本当は降順ではなく昇順にしたいのですが、この際それは後にして、
チェックボックスをDataGridの中に入れました。
Buttonをクリックした時にcheckの判定を取得したいのですが、拾えません
Dim chec As CheckBox = Me.DataGrid1.FindControl("chk_id_1")
とか
Dim chec As CheckBox =CType(Me.DataGrid1.FindControl("chk_id_1"), CheckBox)
等していますが、いざchec.checkで判定しようとするとコケます
デバックをかけると「Nothing」でした。
FindControlのID指定に問題があるのでしょうか?
0728仕様書無しさん
2006/07/05(水) 10:25:18ID:45/4QNHCこの値の有効期限はFormAだけなんですか?
他のページFormBに遷移しても持ち続けることは可能ですか?
0729nobodyさん
2006/07/05(水) 22:40:33ID:???>同一のページに対する複数の要求にわたって…
読んでもいないのか読んだけど意味が分からんのか…
0730712
2006/07/06(木) 16:06:05ID:???ありがとうございます!!
なんとかなりそうです!!
0731nobodyさん
2006/07/09(日) 12:34:25ID:s/yg6zRaVS2003では問題なかったのになんでですか?
0732nobodyさん
2006/07/11(火) 01:21:46ID:???実行時に設定/変更できますか?
0733nobodyさん
2006/07/12(水) 01:50:29ID:sJm5fOrWhttp://pc8.2ch.net/test/read.cgi/tech/1152591404/l50
乱立するほどASP.NETがすごい技術とも思えないが w
0734nobodyさん
2006/07/12(水) 01:59:10ID:???0735nobodyさん
2006/07/12(水) 07:56:59ID:???0736nobodyさん
2006/07/12(水) 12:57:43ID:E5OvzZ2y普通に考えたら
0737nobodyさん
2006/07/12(水) 13:01:39ID:???0738nobodyさん
2006/07/12(水) 23:02:35ID:???すっきりしてるのが革新的w
0739nobodyさん
2006/07/12(水) 23:04:01ID:???0740nobodyさん
2006/07/12(水) 23:23:49ID:???0741nobodyさん
2006/07/13(木) 02:33:10ID:6OUX4Qpb0742nobodyさん
2006/07/13(木) 11:08:17ID:???IISより顧客やサーバー管理者のウケがいい。
0743nobodyさん
2006/07/13(木) 21:14:05ID:???0744nobodyさん
2006/07/14(金) 22:31:01ID:???最大接続10の縛りから開放されるメリット
>ASP.NETで使う言語をphpに出来たら最高なんだがな。
VS.PHPといういかにもっぽいのがあったきがする
ASP.NETはカウンターとか静的なページに
ちょっと動的コンテンツを載せたいとき
ものすごくかったるく感じるよ
PHPみたいに拡張子換えてカウンター表示したいところに
ちょっとコードを追加するだけで済むようなアレがほしい
0746nobodyさん
2006/07/15(土) 11:23:16ID:0YzBw5/Sライセンス買わないと
接続最大数ってショボかったキガスルんだけど
高いし
個人で鯖建てて遊ぶぶんには2003なんて
0747nobodyさん
2006/07/15(土) 12:36:40ID:???ファイルダウンロード機能でダイアログが表示された時、保存ボタンだけでなく
開くボタンがあると思うのですが、これを押した場合、再度ファイルダウンロードダイアログが表示されてしまいます。
行った作業としては、
新規にWebプロジェクト(ファイル、コード分離)を作成し、
Default.aspxにボタンを1つだけ追加し、そのボタンのボタンクリックイベントハンドらにて
Response.Clear();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment;filename=test.csv");
Response.Flush();
Response.Write("test1\r\n");
Response.Write("test2\r\n");
Response.End();
と記述しました。
何か原因・解決方法等、アドバイスありましたらよろしくお願いします。
0748nobodyさん
2006/07/15(土) 12:42:25ID:???できますかね?HTMLで
<option value="赤"><font color=red>レッド</font></option>
としてもダメなので無理かな。
0750nobodyさん
2006/07/15(土) 16:56:52ID:???デザイン系のスレで質問すればわかるかも。
0751nobodyさん
2006/07/15(土) 17:17:57ID:???Response.Clear();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment;filename=test.csv");
Response.Write("test1\r\n");
Response.Write("test2\r\n");
Response.Flush();
Response.End();
0753nobodyさん
2006/07/15(土) 18:51:12ID:ye+U3RXFこれまでは、SQLdataadapter,sqlconnectionをツールバーから貼り付けてdatasetを更新、
sqlDataAdapter1.Update(dataSet1);としてたのですが、
SqlDataSourceをぺたっと貼り付けてサーバーの設定してそこからがわかりません。
これまでのようにdatasetに落とし込むにはどうすればいいんでしょうか?
0756753
2006/07/16(日) 02:08:24ID:???前と同じ事するには少し不便になってるんですね。
とりあえずmobile web formにgridviewをフォームの外側にはって、
GridView1.Rows[row_index].Cells[0].Text
みたいな感じでアクセスしてみました。
以前は、
(string)dataSet1.Tables["hoge"].Rows[row_index]["piyo"]
でした。
邪道とは思うのですが、手書きでの変更点は最小に押さえられそうです。
0757 どん
2006/07/16(日) 03:06:51ID:qdZUXKe8普段は、C# or VB.net にげ業務システムを構築しておりまして、
双方の言語共に一通り使いこなせるのですが、ことASP.netについては
経験がありません。
何かオススメの参考書をご存知の方がいらしましたら、お教え願えます
でしょうか?
0758nobodyさん
2006/07/16(日) 17:47:52ID:W4wWtSSvVisualStudio2005によるWebアプリケーション構築技法
ttp://www.amazon.co.jp/gp/product/4891005157/
MSエバンが書いていて図も多い。おすすめだ。
0760nobodyさん
2006/07/17(月) 17:32:06ID:xq8JFNbL同じフォルダにwebサービスを作ってそれを叩きたい場合、
クライアントアプリケーションからはどのように認証すればいいでしょうか?
認証フォームで.asmxからのリダイレクトの場合のみ認証をスルーして
適当なユーザーとして.asmxにRedirectさせてみても、
認証フォームに行った時点でクライアントアプリケーションはエラーになってしまいます。
0761nobodyさん
2006/07/17(月) 18:05:10ID:???ファイルに保存しようとするとエラーが出たり
エラーは出ないけど何も保存されてなかったりするんだが
なぜでつか?
■ このスレッドは過去ログ倉庫に格納されています