トップページphp
986コメント449KB

【質問】ASP.NETスレ Part4【議論】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/07/17(火) 23:49:46ID:pyJr9yIy
●過去ログ
Part1 - 【質問】 ASP.NETスレ 【議論】
http://pc5.2ch.net/php/kako/1040/10406/1040698263.html

【質問】ASP.NETスレ Part2【議論】
http://pc8.2ch.net/test/read.cgi/php/1111480331/

【質問】ASP.NETスレ Part3【議論】
http://pc11.2ch.net/test/read.cgi/php/1160355849/
0312nobodyさん2007/12/09(日) 18:17:59ID:???
Application_Endが呼ばれた後って、Applicationオブジェクトに格納していた
オブジェクトはどうなります?
要するに、ユーザがしばらくアクセスしなかったら、破棄されたりします?
0313nobodyさん2007/12/09(日) 20:29:55ID:???
Application_Endが呼ばれるってことはそういうことだ。
まあtimeoutを伸ばすとか終了させないようにする手もあるが、
普通は必要ない。
0314nobodyさん2007/12/09(日) 20:37:11ID:???
んー、ようするに、ASPでユーザの状態によらないオブジェクトの維持は無理ってことですかね?
例えば、今日一日のアクセス数を返すようなWebサービスは、変数をファイルに
書き出して保持しないと維持できない訳ですよね?
一番生存期間が長い(と思う)Applicationも、ユーザのタイムアウトによる
Application_Endで破棄されるみたいですし。
0315nobodyさん2007/12/09(日) 22:29:07ID:???
だからリサイクルの設定をみんなオフにする手はあるが、
どっちにしても保証はされてないから結局Endで保存、
Startで読み込みとかは必要になる。
0316nobodyさん2007/12/09(日) 22:30:01ID:???
あ、いや、Endで保存、Startで読み込みは微妙だな、うまくいかない可能性がある。
03173022007/12/09(日) 23:04:34ID:???
たびたび申し訳ないっす。
TableAdapterを試そうとして少々苦戦しています。
VisualStudioでのビルドは通るのに、実行時に型または「名前空間名 'hogeTableAdapters' が見つかりませんでした」って出るのはどうしてでしょう?

……TableAdapter自体もよーわからんっす。Fillした後、どうやってデータを取り出せばいいんだろう?
「ASP.net 2.0 実戦プログラミング入門」という本を参考にしていますが、あまりいい本ではありませんね。
ちょっと後悔。
03183022007/12/10(月) 10:37:10ID:aKqH/kSM
>>317
あ、申し訳ありません。age忘れてましたね。失礼。
03193022007/12/10(月) 18:53:27ID:???
自己解決。↓が足りなかったらしい
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=5228&forum=7
VisualStudioで面倒見てくれるときとくれない時があるのね。
引き続きTableAdapterに挑戦中……。
0320nobodyさん2007/12/10(月) 22:35:57ID:???
おい、PHPスレを荒らしに来てるやつ自重しろクズ
03213022007/12/11(火) 17:02:22ID:fZiANqi9
スレ汚しですみません。
TableAdapterの方はなんとなく判ってきましたが、わき道に逸れてGridView+FormViewなんてモノに手を出してます
なんとかマスターメンテらしきモノを作るところまでは出来たのですが、FormView側で登録・更新・削除した結果をGirdViewに表示させることが出来ません。
ググった結果「GridViewのEnableViewStateってプロパティをFlaseにすればOK」という情報までは取得できましたが、この設定にはなにか副作用があるのでしょうか?
単に「初めての表示/明示的な読み込みの結果を保持しておきたい」という目的以外にTrueにする意味はあるのですか?
0322nobodyさん2007/12/13(木) 00:41:26ID:6Y2No+8T
>>306
コメットを使うことが出来ればやりたいことは実現できそう?
0323nobodyさん2007/12/13(木) 22:05:12ID:???
どっからコメットが…
0324nobodyさん2007/12/15(土) 12:37:07ID:???
DBからSELECTしてきたDataSet等に、
さらにSQLを投げてDataSetを作成することは可能ですか?
0325nobodyさん2007/12/15(土) 13:24:29ID:???
>>324=302
0326nobodyさん2007/12/16(日) 01:51:04ID:???
会社の環境はVS2005なのですが、ちゃんと
aspx
aspx.cs
designer.cs
とワンセットで表示されるのですが、家の環境はWebDevelopperで
designer.csがソリューションエクスプローラに表示されません。
aspxなどの場所にdesigner.csファイルもありません。
これはどうやって表示させるのでしょうか?
WebDevelopperはソリューションファイルやプロジェクトファイルも無いんですよ(^^;
なので、いつもファイルをダブルクリックして立ち上げるのではなく
WebDevelopperを開いて、スターと画面から最近実行したソリューションの一覧から選択してる・・・
0327nobodyさん2007/12/16(日) 19:34:30ID:IvdqqwNS
教えてください。

Repeaterにユーザコントロールファイルをセットして実行し、
ascx.csでRepeater.DataSourceに入っているデータレコードを取得したいのですが
そんな事は可能でしょうか?

this.rep.DataSource = dataTable;
this.rep.ItemTemplate = Page.LoadTemplate("Test.ascx");
this.rep.DataBind();

Test.ascx.csでdataTableのレコードを取得したい。
ascxでは
<%# DataBinder.Eval(((RepeaterItem)Container).DataItem, "name") %>
で取得可能なのですが、これをascx.csでやりたい。
何でかと言うと、この値によって処理を変更したいからです。

お願いしますm(_ _)m
0328nobodyさん2007/12/17(月) 03:20:00ID:???
>>324
ds.table.select("id=1")でDataRow[]が取り出せたような…
これでデータセットに対するselect文は実現出来ない?
0329nobodyさん2007/12/17(月) 18:30:50ID:???
>>328
ありがとうございます。
発端というのが、SQL文が長くなってしまったので、
DataSetを一時テーブル代わりに、小分けにして実行できないかという
安直な思いつきだったのです。
DataSetを2つ作ってから要素を取り出して、
疑似LEFT OUTER JOINとかやってみたのですが余計に大変だなとw
そんな訳で…申し訳ありません。きちんと背景から書くべきでした。
0330nobodyさん2007/12/19(水) 01:40:10ID:kIBGOFX3
現在のページのファイル名を取得できる
プロパティとかありませんか?
用途としては自分自身のページにパラメータをつけて
再度呼び出し、Request.QueryString()でその値を
取り出すためです。
0331nobodyさん2007/12/28(金) 00:08:34ID:EfHkVobu
VWD2005(VB.NET)を使ってます。
javascriptでサブウインドウを作って、閉じる処理をしたいのですが
サブウインドウが閉じない場合があるので回避法を教えて下さい。

awin=window.open('a.aspx', 'a');
awin.close();
この場合うまく閉じる。

awin=window.open('a.aspx', 'a');
ポストバック発生
awin.close();
サブウインドウ閉じない。

0332nobodyさん2007/12/28(金) 20:57:22ID:???
>>330
俺は定数で宣言してる。

>>331
a.aspx内にウインドウを閉じるスクリプトを書き、
なんらかのイベントを受け取らせて実行させればいいんじゃね。
つか、ウインドウを開いて何のイベントも発生させず、
しかし、ポストバックを起こして閉じたいなんてどういう用途なんだ。
03333312007/12/28(金) 22:24:13ID:???
>332
回答ありがとうございました。
実際のコードは間に種々の処理がありますが、最小限の再現コードを
書いただけです。

とりあえず、解決しました。
a.aspxからopenerを一定間隔で監視し見つからなければ自身を
閉じることで実現しました。
openerが遷移した際は、opnerにhiddenを埋め込んでおきa.aspx側から
監視することで遷移を判断しました。

0334nobodyさん2007/12/28(金) 22:29:01ID:???
Request.CurrentExecutionFilePath 辺りとか?
03353302007/12/30(日) 22:06:04ID:???
Request.CurrentExecutionFilePathと
System.IO.Path.GetFileNameを使って
取り出せました。
ありがとうございました。
0336nobodyさん2008/01/01(火) 21:08:48ID:???
しつもんしつもん。

ローカル環境(Web Developer 2005+SQLServer2005)でWebアプリを製作して、
とりあえず動くようになったのでサーバーにアップしたのです。

あ、サーバーはファーストサーバーのエクスプレス2です。無料のね。

なんとかかんとか設定を終えて、いざ実行!・・・したら、エラーがでるのです。

System.NullReferenceException:オブジェクト参照がオブジェクト インスタンスに設定されていません。

ってね。

ローカル環境では問題なく動作するのに、サーバーにアップするとエラーになるってのは、

どうしてなんでしょうか???


0337nobodyさん2008/01/01(火) 22:26:23ID:???
オブジェクト参照がオブジェクトインスタンスに設定されていないからだろ
0338nobodyさん2008/01/08(火) 19:46:24ID:???
ActiveReportsを64ビット環境でどうにか使えるように出来ないでしょうか?
0339nobodyさん2008/01/12(土) 16:00:40ID:???
>>338
それはサポートに聞いた方が早い質問だ
0340初心者2008/01/24(木) 15:18:55ID:RPd1Q97N
ASP.NET でRDOとかでSQLサーバーに接続できるのでしょうか?
それともAODだけなのでしょうか?
0341nobodyさん2008/01/24(木) 15:36:11ID:7JZT46In
Hoge.aspxで
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder" Runat="Server">
<asp:Label ID="heading" runat="server"></asp:Label>
</asp:Content>
のようなブロックがあったとして、Hoge.aspx.vbからasp:Labelを取得したいんですが、
どうやればいいのでしょうか?

単純に
Page.FindControl("heading")
では取得出来ないようで・・・

よろしくお願いします。
03423412008/01/24(木) 17:22:36ID:7JZT46In
上の件については解決しました。
無理にFindControl使わずに、headingをそのまま使えるみたいですね。

しかし、新たな問題が。
Page.Request.QueryString("param1")
として取得したクエリ文字列に日本語が入っていた場合、
AscW関数で取得した数値が一律65533になってしまいます。
どうにか日本語のまま取得出来ないでしょうか?

よろしくお願いします。
03433412008/01/24(木) 17:50:53ID:???
何度もすみません、解決しました。
web.configに
<globalization requestEncoding="Shift_JIS" />
を書くことで日本語で取得できました。
0344nobodyさん2008/01/24(木) 21:04:09ID:swcPOcpz
>>343
目先の結果だけで変更しちゃっていいものなのか?
と、ちょっと思った。
03453412008/01/24(木) 21:23:24ID:0wPjeug7
ではどうするのがいいのでしょうか?
0346nobodyさん2008/01/25(金) 21:27:35ID:???
VS2005使っています。マスターページを利用しているaspファイルの
コンテンツに、vbファイル内にて取得したhtml文を出力させたいのですが
どうやったらよいのでしょうか?コードは次のようになります。

■test.aspxの中身

<%@ Page Language="VB" MasterPageFile="~MasterPage.master"
AutoEventWireup="false" CodeFile="test.aspx.vb" Inherits="test" %>

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">

?ここに、test.aspx.vbの変数AAAAAに格納されたhtml文を出力するコードを書きたい。?

</asp:Content>


■test.aspx.vbの中身

Partial Class CountMonth Inherits System.Web.UI.Page

Protected Sub Page_Load(ByVal Sender As Object, ByVal e As EventArgs) Handles Me.Load
AAAAA="<table><caption>サンプル</caption><tr><td colspan=0 align=center><b>ほげ</b></td></tr></table>"
End Sub

End Class
0347nobodyさん2008/01/27(日) 12:57:11ID:???
>>345
344とは別人ですが,
「考えてShift_JISに変えることで問題を解決させた」なら良いけど,
「Shift_JISに変えてみたら解決した(ように見えた)」なら不安や疑問が残るのは当然。

限定された利用環境でしか通じない(=限定された利用環境では通じる)
ということを理解してるなら問題無いと思う。

345は自分の想定している利用環境を見つめ直してみると良いんじゃない?
自分用アプリだとしでもDB絡みとか考えることは色々あるかも知れない。
文字の符号化の問題はなにかと躓きやすい問題の一つ。
0348nobodyさん2008/01/27(日) 13:00:53ID:???
>>346
変数AAAAAに書かれたコードの安全性を検証できないんじゃないかとか考えたり。
0349nobodyさん2008/01/28(月) 20:37:23ID:???
TreeView のあるノードをクリックしてポストバックした後
さきほどクリックしたノードがハイライトになっているようにしたい。
どのようにすればいいでしょうか。
参考になるサイトありましたらリンク先でもはっていただけると助かります。
よろしくお願いします。
0350nobodyさん2008/01/31(木) 20:49:43ID:pr1Jn4LS
>346 普通に <% =AAAAA %> でいいだろ?
0351nobodyさん2008/02/01(金) 12:55:47ID:Ik8bhfAO
始めたばかりなのですが、質問です。
とりあえずウィザードで作ったページに、_Defaultってクラスが生成されました。
Page_Load()とかに制御が来るのは分かりました。
このインスタンスっていつ削除されますか?
デストラクタを書いたら、起動時に飛んでくるんですけど...;
中でソケット通信していて、終了する時にはCloseしてやりたいのですが、
いつ終了されるか分からなくて...。
宜しくお願いします。
0352nobodyさん2008/02/01(金) 13:05:10ID:???
VB2005にてマスターページを使っている
ページのコントロールを取得、各プロパティを変更したいです。
Me.ControlsをForで回して取ろうとしたところ
マスターページのControlsが取得されてしまいうまくいきませんでした
他に方法はありませんでしょうか?
変更対象が100個くらいあるので・・
1つ1つ変更するのはできれば避けたい所です。
ご教授よろしくお願いします
03533522008/02/01(金) 15:54:44ID:???
自己解決。
Master.FindControlで探してきてDirectCastで取ってこれました
0354nobodyさん2008/02/04(月) 14:54:56ID:???
マスタページを使うよりユーザコントロールでなんとかしちゃったほうが
シンプルでメンテしやすい(Javascriptからの扱い等)と思うのは俺だけ?
0355nobodyさん2008/02/07(木) 10:29:47ID:WbXuHs4A
ttp://support.microsoft.com/kb/323290/ja
ここの「サーバーのメモリに任意のオブジェクトをキャッシュする」ってところのプログラムなんですが、
SqlConnectionをcloseしていません。
これは大丈夫なのでしょうか?
0356nobodyさん2008/02/07(木) 19:17:02ID:???
Close以前にOpenがないだろ?
そしてSqlDataAdapterは非接続型だ。
後はわかるよな?
0357nobodyさん2008/02/09(土) 17:40:07ID:???
ASP.NETのセッションIDはどういった単位でユニークになりますでしょうか?
IPアドレスが違えばユニークになると思いますが
それ以外にはたとえばUserAgentが変わってもユニークに
なりますか?
0358nobodyさん2008/02/09(土) 18:40:06ID:???
どのような環境でもユニークになるから気にしなくておk
0359nobodyさん2008/02/11(月) 01:40:21ID:???
>>357
sessionid がクライアントから投げられてこなけりゃ新しく生成される。
だからたとえ同じUAでも別途立ち上げれば別セッションとして扱われる。
UAが投げてるRequest見ると分かりやすいかも。
FiddlerだのWebDevelopmentHelperだので見ると幸せになれるかも知れん。
0360nobodyさん2008/02/11(月) 10:12:41ID:8IeW4FxX
DataAdapter は接続型だろ。
ただ、Fillメソッドの中で Open と Close してるだけ。
0361nobodyさん2008/02/11(月) 11:40:28ID:???
は?
0362nobodyさん2008/02/14(木) 00:08:37ID:???
データアクセスコンポーネントをデザイナツールで作成し、
TableAdapterのGetDataでデータテーブルを取得した後
ObjectDataSourceコントロールを使用せずに、コードでGridViewと連結しました。
この場合のGridViewの複数の列に対して非表示の設定を行いたいのですが
どのようにコーディングすればよいのでしょう?
0363nobodyさん2008/02/14(木) 00:32:20ID:???
DataTableのColumnsの数を調整する
0364nobodyさん2008/02/15(金) 00:12:20ID:???
そうなのか、DataTableで調整するんですか
GridViewの列数をカウントしても0となってるんで悩んでました
0365nobodyさん2008/02/15(金) 21:57:56ID:???
信じてどうする
0366nobodyさん2008/02/18(月) 18:21:09ID:p++OLHN+
ASP.NETで構築したサイトがあるのですが、社内のイントラWebなので
統合Windows認証で認証を行うようにしてあります。
先日、IE6からIE7に切り替えたのですが、上記のサイトに接続する際にユーザ名と
パスワードを確認するダイアログが出るようになりました。
従来どおり、ダイアログが出ないようにするにはブラウザの設定が必要なのでしょうか?
インターネットオプションの信頼済みサイトには上記のサイトが入っています。
IE6では、これを設定すればダイアログが出ないようになりました。
0367nobodyさん2008/02/18(月) 18:30:11ID:???
自己解決しました。
今までは信頼済みサイトにサイトを入れていたのですが、イントラサイトに入れなおして
ログインのオプションを調整したら入れるようになりました。
お騒がせしました。
0368nobodyさん2008/02/19(火) 14:46:13ID:???
すみません。質問です。
ASP.NETをはじめたばかりなので、どのコントロールを
使ったらいいかというレベルです。

掲示板みたいに、ログファイルを整理して表示するページを作っているのですが、
どのコントロールを使ったらよいのでしょうか。
DataListを見ると、1行おきに設定できるのは、色だけであり、
フォント関連のタグは指定できません。
Tableも、値を追加することは出来ても、フォント関連のタグは
指定出来ません。

ASP.NETは、デザインで、オブジェクトを配置してプログラムする
スタイルですので、プログラムのループで、オブジェクトを配置というのも
出来ませんよね・・・
03693682008/02/19(火) 15:04:42ID:???
追加で補足です。
例えば、以下のサイトのサンプルの掲示板では、
書き込む時にログファイルにタグも含めて書き込んでしまい、
データを表示するときに、すべてのデータをLabelに表示する
という形式を取っています。
ttp://aspnet.cguild.com/download.html
ASP.NETの場合は、こういうやり方しかないということなのでしょうか。

私は、2ch.netみたいに、データだけのログファイルがあり、
それを自由にレイアウトしながら表示するというものをしたいのです。
これが、Perlだとすぐにイメージがつかめるのですが、ASP.NETとなると
プログラムの全体概要のイメージが出来ないのです。

それで、どういうコントロールを使ったら良いのかを質問してみました。
0370nobodyさん2008/02/19(火) 21:10:25ID:???
>DataListを見ると、1行おきに設定できるのは、色だけであり、
>フォント関連のタグは指定できません。
DataBoundイベントでも引っこ抜いて、動的に生成すれば大抵のことはできる。
マウスでD&D、ちょいちょいとプロパティ設定で、はい出来上がりではない。

>ASP.NETは、デザインで、オブジェクトを配置してプログラムする
そらホームページビルダーだろw
基本的にデザインビューは、知らない人が保守で見たときに
オブジェクトの相関関係が目で見て分かりやすいってものだと俺は認識してる。
コードで書けばいい。

>データを表示するときに、すべてのデータをLabelに表示する
Labelなんてspanタグだ。"<span> %s <span>"だと思えばいい。

>ASP.NETの場合は、こういうやり方しかないということなのでしょうか。
んな訳ない。好きなように出来る(一部、死ぬほどやり辛いことはあるが)。
ちょっと初心者過ぎる気がするので、本を一冊買って来た方が良いと思う。
0371nobodyさん2008/02/20(水) 01:53:44ID:???
>>370
レスありがとうございます。
> DataBoundイベントでも引っこ抜いて、動的に生成すれば大抵のことはできる。
> マウスでD&D、ちょいちょいとプロパティ設定で、はい出来上がりではない。
なるほど。私がイメージしてたものとは違うということのようですね。
コントロールの使い方について学んでいく必要があります。

> コードで書けばいい。
開発環境を使わずにメモ帳を使ってということですよね?
そっちのスタイルでも書いている方は結構いらっしゃるようですね。

> Labelなんてspanタグだ。"<span> %s <span>"だと思えばいい。
spanで囲むだけだったのですか。
何か特別なオブジェクトに格納するので、あまり長い文字は入れたり
しない方がいいのかなと思ったりしていました。
だったら、あの仕様でも良いですね。

> んな訳ない。好きなように出来る(一部、死ぬほどやり辛いことはあるが)。
> ちょっと初心者過ぎる気がするので、本を一冊買って来た方が良いと思う。
分かりました。書籍を購入して読んでみます。
しかし、ちょっと気になったのですが、ASP.NETなど製品版の場合、PHPやPerlに
比べてネットだと情報量が少ないですよね。。。開発をしようとすると非常に費用が
かさむ世界なのでしょうか。。
0372nobodyさん2008/02/20(水) 03:13:04ID:???
すみません。質問です。
ASP.NETで書くと、それを表示する環境側にあわせたhtmlコードを出力する仕様だと
いうことですが、それは、コントロールを配置した場合に限るのですよね?
コントロールを配置する範囲でうまくいかない場合はstringに自分でタグをいれこんで
それをまとめて出力するとかやる事が多いと思うのですが。
このメリットは、本当に現場で活かされているのか、ちょっと疑問だと思いましたので
質問をしてみました。
ttp://www.atmarkit.co.jp/fdotnet/aspnet/aspnet01/aspnet01_03.html
0373nobodyさん2008/02/20(水) 23:45:41ID:???
>>371
>開発環境を使わずにメモ帳を使ってということですよね?
違う違うVS2005。言いたかったことは、君が思ってるよりも
コード(aspx.vbや.vb)の手打ちで実装させることが多いということ。
TextBoxのonblurイベントからJScriptFunctionを仕込んだり、
GridViewに複数列をキーとしたソートを実装したり、
JScriptでの結果をASPにreturnして、さらにその結果をJScriptに返したりとか、
デザインビューのプロパティやコンテクストメニューとかに
項目が存在していなくても、コードを書けばなんとでもなることが多い。

>PHPやPerlに比べてネットだと情報量が少ないですよね。。。
。。。と付ける程少なくないと思うが。つかMSDNとヘルプでほぼ事足りる。
ASP.NETのクイックチュートリアルとか読んだか?試したか?

>開発をしようとすると非常に費用がかさむ世界なのでしょうか。。
ヒント:天下のM$様が開発された代物
つか、個人(だよね?)でASP.NETを使うメリットなんてないと俺は断言する。

>>372
>このメリットは、本当に現場で活かされているのか
活かされてるも何も、うちの会社ではGoTo文使うような扱いを受ける。
どうしても使わざるを得ない場合は設計を見直す。
MVCモデルとかOOPとかその辺の本も買ってきな。
0374nobodyさん2008/02/20(水) 23:49:11ID:???
補足:
>活かされてるも何も、うちの会社ではGoTo文使うような扱いを受ける。
文字列にタグを入れ込んで表示することが、ね。
0375nobodyさん2008/02/21(木) 00:21:53ID:???
>>373
レスありがとうございます。

> デザインビューのプロパティやコンテクストメニューとかに
> 項目が存在していなくても、コードを書けばなんとでもなることが多い。
プロパティに項目がなければ、なすすべが無いみたいに思っていたのですが、
現場の開発ではそうでもないのですね。
私は個人的に、工夫をするコードを書くと、あらかじめ準備しているクラスを活かしきれて
いないことから、重いだけの無駄な処理をしているようなイメージを持っていたのですが、
このあたりが間違っていたようですね。

> ASP.NETのクイックチュートリアルとか読んだか?試したか?
それは読んでませんでした。@ITの記事を読みながらやってましたので。
愚痴のような話ですが、Microsoftの入門者向け情報で、VBなどは読んでいたのですが、
ウィザードを使って、作って、ほら便利でしょ。終わり。という系統のが非常に多くて、
それに応用性が無いと思って読まなくなってました。M$のは中級者向けのがないですよね。
リファレンスはしっかりとしてますが、具体的な応用性がいまいちイメージできなかったり
しています。

> つか、個人(だよね?)でASP.NETを使うメリットなんてないと俺は断言する。
そうです。今は個人でやってます。会社でやることも考えて勉強のような位置づけです。
やはり、チームを組んでアプリを組む場合にメリットがあるわけであり、どんな場合でも
メリットがあるわけではないのですね。参考になりました。

ありがとうございます。
0376nobodyさん2008/02/21(木) 07:34:22ID:???
>>373-374
> 活かされてるも何も、うちの会社ではGoTo文使うような扱いを受ける。
> (文字列にタグを入れ込んで表示することが、ね。 )
> どうしても使わざるを得ない場合は設計を見直す。
コントロールを配置する方向で実現する方法があるのですね。
工夫をしてそのような方法が出来るかを見てみます。

> MVCモデルとかOOPとかその辺の本も買ってきな。
ASP.NETは、他のフレームワークと比べてMVCを意識しなくていいという
記事もあります(記事はASP.NET 1.0ですが)が、やはり、開発にはMVCを
意識して、役割を分けて作る必要があるということなのですね。
http://www.atmarkit.co.jp/fdotnet/special/aspstruts01/aspstruts01_04.html
MVCで検索するとjavaが良くヒットしますが、ASP.NETを例にしたものは、
簡単な文章のものしか見たことがありませんが、これは、MVCを理解して、
それをASP.NETで応用するという意味でしょうか?
0377nobodyさん2008/02/21(木) 15:02:01ID:???
>>374さんの話は、<asp:〜 runat=server>タグに限った話ですか?
それとも<br>なども含めた話ですか?
0378nobodyさん2008/02/21(木) 16:09:59ID:???
DataListの使い方について質問です。
DataListのDataSourceを文字列にすると、意図するように表示されるのですが、
ADO.NETでDataReaderから取得した文字をDataSourceに指定すると、
1マスに1文字となってしまいます。
取得した文字の確認の為、Label等に出力させてみても、改行などは入って
いないのですが、DataListにすると、1文字ずつに分断されて表示されてしまいます。
これは、何処が問題なのでしょうか?

DataListのコード

<asp:DataList id="datalist" runat="server" CellPadding="1">
<ItemTemplate>
<%# Container.DataItem %>
</ItemTemplate>
</asp:DataList>

つづく
03793782008/02/21(木) 16:11:00ID:???
つづき

string[] st = {"aaa", "bbb"};
datalist.DataSource = st;
datalist.DataBind();

の出力結果は、

aaa
bbb

OleDbDataReader dr = cmd.ExecuteReader();
dr.Read();
string st = dr["タイトル"] + "," + dr["メッセージ"];
datalist.DataSource = st;
datalist.DataBind();

の出力結果は、

a
a
a
,
b
b
b
b
0380nobodyさん2008/02/23(土) 22:33:31ID:???
app_codeフォルダを作成し、その中にコードファイルhoge.csを作成したのですが、
そのhoge.csのusing 宣言でSystem.Dataが認識されません。
System.入力後にインテリセンスでもSystem.Dataが出てきませんし、メンバも利用できません。
参照設定でSystem.Dataを参照しても変わりません。
どこを修正すればよろしいのでしょうか?
0381nobodyさん2008/02/26(火) 10:27:21ID:???
>>379
上のコードは文字列の配列を渡しているのだから、
下のコードも同じように文字列の配列を渡すようにすれば良いじゃない
0382nobodyさん2008/02/26(火) 10:30:08ID:???
string[] st = { dr["タイトル"], dr["メッセージ"] };
でどう?
0383nobodyさん2008/02/28(木) 13:48:03ID:???
>>381-382
それでうまくいけました。
渡すデータの形が悪かったのですね。
ありがとうございました。
0384nobodyさん2008/02/28(木) 23:40:54ID:???
パスワード入力のinputってポストバックしたら消えるけど、この値を常に表示させたいが
どうすればいいですか
0385nobodyさん2008/02/28(木) 23:51:48ID:???
>>384
Cookieとかじゃダメ・・・?
0386nobodyさん2008/02/29(金) 00:28:07ID:???
すみません。クッキー以外でお願いします。
ブレークポイント設定して順に追ってみたのですが、どのタイミングで消えるのか分かりませんでした・・・
0387nobodyさん2008/02/29(金) 00:38:41ID:???
どうしてもというのであればSessionにつっこむ
0388nobodyさん2008/02/29(金) 01:25:24ID:???
やっぱりSessionしかないのですね。ありがとう
0389 [―{}@{}@{}-] nobodyさん2008/02/29(金) 13:04:10ID:????PLT(21001)
>>384
PassBox.Attributes.Add("value", "パスワード")
でいかが?
03903842008/03/01(土) 13:09:02ID:???
>>389
完璧です!
0391nobodyさん2008/03/05(水) 12:54:57ID:???
ページ内でエラーが発生してcatch句で処理する場合など、
エラーが発生したことを表示させるにはLiteralとかで表示させるのが一般的なのでしょうか?
0392nobodyさん2008/03/05(水) 21:45:09ID:???
global.asaxでまとめてcatchしてエラーページに飛ばす。
0393nobodyさん2008/03/06(木) 14:34:16ID:???
サイト発行で完全コンパイルしていますが、特定ページのみコンパイルしない状態を作ることは出来るのでしょうか。
0394nobodyさん2008/03/07(金) 00:12:53ID:???
ASP.NETでASP.NETを実行してるユーザーの権限とかいじらずに
デフォルト状態でファイルとかにログを吐くにはどうしたらいいのでしょうか?
0395nobodyさん2008/03/07(金) 00:47:49ID:???
普通にglobal.asaxとかで出来ない?
出来ないならNetwork Serviceアカウントに権限与える必要あり。
FileSystemAccessRuleクラス当たりをググってみて
0396nobodyさん2008/03/07(金) 01:04:24ID:???
App_Dataにでもはいとけ
0397nobodyさん2008/03/07(金) 16:14:45ID:???
>396
うまくいきました。
0398nobodyさん2008/03/08(土) 19:12:02ID:J6kJ8MXk
asp.netのSessionについて調べているのですが、
Session.SessionIDプロパティの値って、いつ設定されるのでしょうか?
最初にwebアプリのaspxファイルにアクセスした時ですか?
0399nobodyさん2008/03/08(土) 22:01:34ID:???
はい。該当の仮想ディレクトリにアクセスされた時です。
0400nobodyさん2008/03/08(土) 22:33:34ID:???
うそつけ
0401nobodyさん2008/03/08(土) 22:34:01ID:???
自宅でASP.NETの勉強をしようと思い参考書を買ったのですが、不具合が…
参考書では

>Windowsコンポーネントの追加と削除」→
>Windowsコンポーネントウィザード」→
>インターネット インフォメーション サービス(IIS)」にチェック→
>「詳細」を左クリックします。

もうこの時点でアウト。
『インターネット インフォメーション サービス(IIS)』自体が表示されてません。
非常に困ってます。どうすれば表示されますか?教えてチャンですいません。
0402sage2008/03/08(土) 22:46:29ID:J6kJ8MXk
Sessionオブジェクトに値を設定したときかな。
IsNewSessionプロパティを見れば判るかも。
0403nobodyさん2008/03/08(土) 22:50:25ID:???
>401
環境は?XPの場合Home Editionだと×。IISはProfessional Edition 以上
04044012008/03/08(土) 23:10:59ID:???
OSはXP Home Editionです。
Professional Edition以上とは参考書に全然書いてないんで、安心しました。

勉強段階で行うのはアプリの動作確認だけだし、
使ってるレンタルサーバが「ASP.NET対応!テスト使用にもどうぞ」って謳ってるので、
IISは必ずしもクライアント側では必要ないのかも? という気がしてきました。
(間違ってたらご指摘下さい。)

お早いレス、有難うございます。
0405nobodyさん2008/03/08(土) 23:12:21ID:???
>>404
まあ、必要ないっちゃあ必要ない。
ただ、デバッグとかするのにはあるほうが数倍便利。
0406nobodyさん2008/03/09(日) 01:40:07ID:???
>参考書では
いつの参考書だ?
0407nobodyさん2008/03/09(日) 09:06:44ID:???
>>404
OSはXP HEは駄目だと表記されてない書籍というのは相当怪しくないか?
あと、出来れば、プログラムが無限ループになる可能性もあるから、
レンタルサーバの使用は避けた方がいいと思うけどな。
あと、XP HE でも、ASP.NETは動かすことは可能だぞ。2005以降のIDEだと
自動でローカルで動作確認が出来るツールが入ってくるし。
0408nobodyさん2008/03/10(月) 20:47:04ID:X6+NrWjc
>>404
Virtual PC + Windows Server 2003 180日評価版
0409nobodyさん2008/03/12(水) 23:23:12ID:???
変数をstaticで宣言した場合、いつまで保持されるのでしょうか
ポストバックしても残ってますが そのページ内でのみ残ってるのでしょうか
0410nobodyさん2008/03/13(木) 20:24:46ID:???
ASP.NETワーカープロセスが終了するまでじゃないの
0411nobodyさん2008/03/13(木) 21:15:47ID:???
それはないわ
■ このスレッドは過去ログ倉庫に格納されています