07/03/16 15:04:00
>>460
ていうかSessionはobjectを格納できるから( ´ー`)
462:460
07/03/16 15:24:23
オブジェクト格納できたのか…
俺も勉強になりました。
ありがとう
463:nobodyさん
07/03/17 04:47:25
ASP.NETのエラーメッセージが、開発環境は日本語なのに
.NETフレームワークとランゲージパックを入れたサーバのほうでは英語で表示されるわけだが
サーバのほうでも日本語で表示する方法はあるのかの?
464:344
07/03/17 18:32:06
>>463
上にもあるけど地域の言語のオプションとか、鯖そのものの言語設定や
地域設定は確認してみたの?
465:nobodyさん
07/03/17 23:09:28
sessionは大概入れられるが、シリアライズできないものは入れない方がいいいいのじゃ
ってじっちゃが言ってた。
466:nobodyさん
07/03/17 23:30:55
ユーザーコントロールについて質問です(ASP.NET1.1)
ユーザーコントロール上のドロップダウンリストで選択された値を親のページのテキストボックスにセットしたいのですが、
この場合どうやればよいのでしょう?
親ページ→ユーザーコントロールはできるのですがユーザーコントロール→親ページができなくて・・・
467:344
07/03/18 00:32:27
>>465
そうなの?sessionで格納できるのがobjectである以上、そこら辺は保証
されてるような気がするけど。
文字としてhtmlに埋め込むviewstateもobjectを格納できるし。
IXmlSerializableについてはあまり詳しくないのでアレだけど、
IXmlSerializableインターフェースを継承すれば、基本的にどんなclassでも
シリアライズできるんでないの?
objectを格納できないソースがあったら教えてください。
468:344
07/03/18 00:55:18
>>466
ユーザコントロールの場合、ユーザコントロールのデザイナ画面で配置した
コントロールは、ユーザコントロールを作成するclassにおいてpublicとして
配置されないので、
public partial class [aspxName] : System.Web.UI.Page
からは継承の関係上、直接的に配置したコントロールから閲覧することができません。
ユーザーコントロール→親ページへのメッセージの受け渡し方法が不明だけど、
1)ユーザコントロール上でDropDownLisrtをpublicなプロパティとして公開する
2)ユーザコントロールに、ユーザコントロールのイベント発生時に親ページの
プロシージャを呼び出せるようにデリゲートを実装する。
のいずれかになると思います。
1)では、何らかのイベント発生時にDropDownListのSelectedValueあたりを取得します。
2)では、ユーザコントロール上でDropDownList.Onchangeイベント等を取得したら、
そのままユーザコントロール上に設定したデリゲートを(=親ページの任意のプロシージャ)
を呼び出すようにします。
たぶんこんな感じになると思います。
469:nobodyさん
07/03/18 01:35:04
>467
InProc以外のセッションモードではプリミティヴ型かシリアライズ可能なものに限られる。
ViewStateだってそうだろ。
実際にやってみるなりMSDNでも見てくれ。
470:nobodyさん
07/03/18 01:48:01
既定でInProcだから設定変えんことには試しようがないよな。
このあたり見てくれ。
URLリンク(msdn2.microsoft.com)(VS.80).aspx
471:344
07/03/18 02:38:32
>>469
だからXmlSerializerで事実上はどんなクラスもシリアライズ
できるんでないのって話。
472:344
07/03/18 02:48:41
>>469
詳しくみてみたが、InProcならobject格納できるんじゃん(*゚ー゚)
473:nobodyさん
07/03/18 13:18:17 JZdDpOFH
Dim cn As New OleDbConnection
Dim da As OleDbDataAdapter
Dim ds As New DataSet
Try
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\test.mdb"
da = New OleDbDataAdapter("SELECT * FROM tbl;", cn)
da.Fill(ds, "tbl")
cn.Open()
Me.lebel1.Text = ds("text1") ここと
Me.label2.Text = ds("text2") ここのdsでエラーが出てるようです。
Catch ex As Exception
'エラー処理
End Try
ds.Dispose()
da.Dispose()
cn.Dispose()
このソース実行で、
system.data.dataset には既定のプロパティがないため、インデックス処理ができません。
とか言うエラーが出たのですが、どうすればよいでしょうか?
よろしくお願いします。
474:nobodyさん
07/03/18 15:13:09
>>473
>Me.lebel1.Text = ds("text1")
ここの表現に激しく違和感
一瞬VB6以前のコードを見ているかと思った
475:nobodyさん
07/03/18 15:35:28 JZdDpOFH
>>474
最近VB6から移行したので。
この場合、どのように書けばよいでしょうか?
お願いします。
476:nobodyさん
07/03/18 15:35:32
>>473
「.NET 既定のプロパティ」とかでググれ。
"text1"って列名なんだろうけどそのまえにどのDataTableのどの行かの指定がなきゃどうしようもない
477:nobodyさん
07/03/18 15:52:10
>>475
ネットにゴロゴロ転がってるサンプル見れ
VB6とは全然違う
478:nobodyさん
07/03/18 17:19:36 JZdDpOFH
>>475
DataReaderでは、dr("text1")と言う風に書いてますが
Datasetはまた違うのでしょうか?
479:nobodyさん
07/03/18 18:49:28
>>478
アドバイス無視して質問ってかなり失礼だと思う。
アドバイス見ても解んなかったらかなり向いてないと思う。。。
480:nobodyさん
07/03/19 11:29:44
そもそも趣味サイト以外でInProcは・・・
「InProc」でぐぐって一番上のサイトでもわかるように。
481:nobodyさん
07/03/21 13:26:04 3i8vjnb6
asp:LinkButtonを押して呼び出されたページで、
どのリンクボタンで呼び出されたかボタン名を
知るにはどの様に書けばよいのでしょうか?
よろしくお願いします。
482:nobodyさん
07/03/21 22:34:06 MYne4eNP
スプリッタで領域を可変にするには何を使えばよいのでしょうか?
ヘッダ
-------
左|右(メイン)
-------
フッタ
左と右(メイン)の領域を動かせるようにしたい。
483:nobodyさん
07/03/22 01:08:11 phUZb8Bf
Winアプリなら余裕だけど
ASPだとWebパーツとかつかうんじゃね?
たぶん
484:nobodyさん
07/03/23 08:35:20
>>478
データセットがデータリーダーと同じ使い方できるなんて初めてきいた
485:nobodyさん
07/03/23 17:42:16 hGN3JWyt
はじめまして
環境は IE7 VS2005 WinXPSP2 SQLServer2005 です。
ASPのサイトを部分部分でASP.NETに移行しています。
ページAからJScriptの関数でHIDDENに値を設定したのちページBにsubmitすると
RequestがNothingになってしまい、ページAのFormに「runat="Server"」を指定
したら以下のエラーが出てしまいました。
>viewstate MAC の検証フィールドです。
>このアプリケーションが Web Farm またはクラスタによってホストされている場合、
><machineKey> 構成が同一の validationKey および検証アルゴリズムを指定していることを確認してください。
>AutoGenerate をクラスタで使用することはできません。
対処法を教えていただけませんか?
よろしくお願いします。
486:nobodyさん
07/03/24 03:42:37 bV7pw1D8
接続してきた相手のIPは取得できるんだけど
MACアドレスを取得する方法ないかの~
487:nobodyさん
07/03/24 08:53:26 ra4BhRNo
1つのサイトにDefault2.Master見たいな感じで
複数のmasterpageを使うことは出来るのでしょうか?
試しにやってみましたが、LabelxxxはDefault2.Masterのメンバーではありません。
見たいなエラーが出ました。
助けてください。
488:nobodyさん
07/03/24 15:58:43 bHy9WQAt
487だけど、出来たからいいです
489:nobodyさん
07/03/24 18:10:34 XDdUknzS
技術評論社から出ている
「プロが作った!すぐ使える!
ASP.NET2.0
実践サンプル集」
と言う本を買ってサンプルを開いたら、パーサーエラーの連続で
話にならないのですが、これは無料のVWD2005 ExpressEdition用だから
SV2005では使えないのでしょうか?
490:nobodyさん
07/03/25 23:32:33
どういうコードと環境でこうしたい、こんなエラーが出るってのなら
推測もアドバイスも出来るけど、、、
それだと、「出版社に聞けば?」ぐらいしか言えんがな(´・ω・`)
491:nobodyさん
07/03/26 07:14:47
>>489
その本持ってますが、web.configにあれこれ宣言されているからのようです。
エラーの出る行をコメントアウトしていけば動くようになるですよ。
492:nobodyさん
07/03/26 09:27:11
>>485
ページAとBはどちらもASP.NET?
そのエラーは__EVENTVALIDATIONがうまく渡っていないときにでるね。
493:489
07/03/26 17:14:33 b88DcWi3
>>491
ありがとうございます。
やってみます。
494:489
07/03/26 22:04:59 zmM8Lysd
>>491
この本のch11でエラーの出ているweb.configをコメントアウトしてみたところ
以下の操作はサポートされています。正式な定義に関しては、~~
という画面になり、実行できませんでした。
どのようにすれば動くようになるのでしょうか。
よろしくお願いします。
495:489
07/03/26 22:27:51 zmM8Lysd
すみません、本をよく読んだら最初の部分は出来ました。
が、atlas~~のコントロールが「表示できません」となってしまいます。
追加のコンポーネントが必要なのでしょうか?
よろしくお願いします。
496:nobodyさん
07/03/26 22:33:46
Atlasはベータ版のライブラリだから、もうやめたら?
正規のAjaxフレームワークをつかいなよ。
497:489
07/03/26 22:52:45 zmM8Lysd
>>496
これでよろしいでしょうか?
URLリンク(ajax.asp.net)
この場合、ソースコードの<atlas:を何に変えれば良いでしょうか?
498:nobodyさん
07/03/27 06:48:50
>>497
合ってる。タグは"<asp:"。
その本がどの程度Atlasコントロール使ってるか知らないけど
"<asp:UpdatePanel~"とか"<asp:ScriptManager~"とか。
499:497
07/03/27 22:22:13 kydgdnGV
>>498
ありがとうございます。
500:nobodyさん
07/03/28 10:42:11
501:497
07/03/28 12:32:31 dMYUDzOF
atlasタグをasp:に変えて実行したところ、下記エラーが出てしまいました。
ちなみにこの開発マシンには、atlasとAJAXの両方が入ってます。
エラー ファイルまたはアセンブリ 'Microsoft.Web.Atlas'、またはその依存関係の 1 つが読み込めませんでした。
指定されたファイルが見つかりません。
502:nobodyさん
07/03/28 13:22:05
DLLの参照が足りてない感じだね。
503:497
07/03/28 16:09:07 m8YLBux/
>>502
DLLの参照は、どのようにすればよいでしょうか。
お願いします。
504:nobodyさん
07/03/28 16:23:21
DLLの参照が足りないというより、
atlasからajaxへの書換えに失敗しているのでは。
プロジェクト全体をatlasという文字で検索してみたら?
505:nobodyさん
07/03/28 19:57:39
ASP.NETをJAVAアプレットのようなもとかと勘違いしていた俺がきましたよ
.netもJAVAアプレットみたいなのがおけるようにならんかな
506:nobodyさん
07/03/28 21:19:05
Javaだってさ、プ)っ
507:nobodyさん
07/03/28 23:02:57 H2LX4t8O
むしろ重要なところは「アプレット」なわけだが。
508:nobodyさん
07/03/29 03:39:05 PO5WDGp2
XMLdocumentクラスを使ってXHTMLファイルを読み込んで
動的にselectタグselected属性を付けたりしたいんですが
どうしてやればいいんでしょうか?
イマイチXPathが良く分からないので分かりやすく説明している
URLがあるなら誘導お願いします…
509:nobodyさん
07/03/29 11:00:46
>>508
SelectNodesとかで指定してCreateTextElementとかで作ったノードをAppendして
DocをWriteToで書き出せばOK
510:nobodyさん
07/03/29 13:24:33
>505
WPF/Eのことか?
511:nobodyさん
07/03/29 15:10:46
>>505
マネージコントロールにすればできるじゃない
URLリンク(ja.gotdotnet.com)
512:nobodyさん
07/03/29 19:27:51 8uO4JYhJ
>>511
なんかよくわからんが
相手側にフレムワクが入ってれば
Windowsフォームをブラウザで起動させることができるってことか?
513:nobodyさん
07/03/29 20:52:05 41v7jcma
フレームワーク2.0で作ったサイトをフレームワーク1.0の鯖に上げたら
エラーになりました。
当然でしょうか?
514:nobodyさん
07/03/29 22:15:15
基本です
2.0と1.0は別物と考えたら幸せになれます
515:nobodyさん
07/03/31 16:51:08
プレステ2向けのゲームをプレステに入れても動きませんでした
と一緒
516:nobodyさん
07/03/31 21:36:11
Loginコントロールでログイン画面を作っています。
入力されたパスワードをサーバーに送信するとき
暗号化したいのですが、SSLしか方法はないですか?
たとえば、Javascriptで暗号化してもいいものなのでしょうか?
javascriptはコードが見えてしまうので…。
達人の皆様、どうかご教授くださいm(__)m
517:nobodyさん
07/03/31 22:40:54 FprosiQM
gridviewとObjectDataSourceをバインドした時のパラメータ周りの落とし穴について
1.GridViewの列の設定でvisibleがfalseになっている
2.original_変数名という余計な変数が渡されるために関数が見つからないエラー
ObjectDataSource.ConflictDetectionプロパティをOverwriteChangesにセットすれば
いいはずが、ObjectDataSource.OldValuesParameterFormatString の「original_{0}」
を「{0}」にする。さらにすべて消して一度ビルドしてから「{0}」にすると治ったり。
URLリンク(geekswithblogs.net)
3.あとから追加したプロパティやフィールドの値だけがObjectDataSourceの各コマンド
オブジェクトに指定したデータオブジェクトに渡されずnothingか0になっている。
他の引数は正常。
1と2を乗り越えたらこんどは3でした。
GridViewをデザインしながらクラッシュアンドビルドでストアド書き直したりして
ObjectDataSourceやデータオブジェクトをいじっていると、どうもコードビルダーや
ウィザードあたりに古い設定が残ったままになってるっぽいですね。
さて、キャッシュ消して再起動してみます。
3について経験のある方、解決方法を知っている方、キャッシュ消してもダメだったら
どうか情報をお願いします。
518:nobodyさん
07/03/31 22:51:16
>>516
ハッシュ関数を使えば、使ってるハッシュ関数と暗号化されたデータがわかっても
元の値はわからない・・・と教えられました。
最近は必ずしもそうでもないでようですから使う関数は選ぶのがよいようです。
URLリンク(blog.ohgaki.net)
もっとも、そのsha512を使おうと元のパスワードが簡単だと、sha512で自動生成した
辞書でマッチしてしまうのでNGですね。2chのトリップとおんなじ。
519:nobodyさん
07/03/31 23:01:40
>>517
ダメ、でした。orz
さらにDeleteコマンドにも設定した覚えのない引数が余分に渡されています。
どうもインデックスキーやソートキーに指定されるフィールドが
余分になったり渡せなかったりしている感じです。
とりあえず泣きながら寝ます。
520:nobodyさん
07/04/01 11:27:14
>>517
解決しました。
GridViewのプロパティ
DataKeyNameに設定されたフィールドは
GridViewのvisibleがFalseでも、
それどころかフィールド列が追加されてなくても、
コマンドフィールドとして追加されたコマンドボタン(削除・編集更新キャンセル)では、
強制的に引数として追加されてしまうようですね。
初歩的な仕様だったかも知れないです。
また、ObjectDataSourceのコマンドパラメータにDataKeyNameに登録されたフィールドで
データが取得できない不具合に見舞われることがあります。
対策としてはコマンドパラメータをすべて削除、DataKeyNameに正しいキーフィールドだけ
設定、あらためてコマンドパラメータを正しく設定。で、治りました。
これはGridViewとObjectDataSourceを追加削除フィールドの変更など繰返していると
発生するようです。
521:nobodyさん
07/04/01 19:42:23
>>518
ありがとうございます。
基本的にはSSLだと思うのですが、
SSLに頼らないでできないものかと思いまして。
522:nobodyさん
07/04/02 00:41:59
>>521
ただハッシュ関数だと復号できないですからね。
受け側もハッシュコードを保存していてそれで比較しますよね。
パスワードの意味はわからないけど、ハッシュ値をそのまま盗まれ
てPOSTされたらログインできなくはないです。
それなりのツールがあれば。
なので、やっぱり万全を期すならSSLが正解でしょう。
ブログのログイン程度ならハッシュで十分だと思うし。
SSL使ってませんよね。
523:nobodyさん
07/04/03 19:57:42 XOrq89tB
VS2005とアトラスで作ったサイトを現行AJAXで動かすには
どのように変更すればよいでしょうか?
524:nobodyさん
07/04/03 23:01:28
現行AJAXって初めてきいた
525:nobodyさん
07/04/05 20:39:34 pMCpj/nq
.net framework 2.0を停止して framework 1.1を有効にするにはどうすればいいでしょうか?
急にframework1.1環境のサイトを造らなければならなくなりました。
よろしくお願いします。
526:nobodyさん
07/04/05 21:02:13
両方の環境が入っていれば、1.1用アプリは1.1で動くが・・・
527:nobodyさん
07/04/05 21:50:24 pMCpj/nq
てゆうか、2.0が入ってれば2.0のほうが優先されるけど
1.1しか入ってないサーバで動くサイトを作りたいんだが
528:nobodyさん
07/04/05 22:23:57
VS2005で1.1用サイトを作りたいってことなら無理
529:nobodyさん
07/04/05 22:36:59
既に1.1環境用のフリーソフトって廃止になったんだっけ?
ウェブマトリクスとかそんな名前のやつ。
もし急場凌ぎでも1.1用サイトを作成しなければならないなら使えると思うが。
530:nobodyさん
07/04/05 22:46:01
2.0上でpdfファイルを吐けるサーバーコントロールの扱いやすいのってありますか?
ページを直接プリントする代わりにpdfを吐いて、そのファイルをブラウザで開いて印刷、
みたいな用途に使いたいのですが。
531:nobodyさん
07/04/06 00:25:08
>>527
情報を小出しにすんな
URLリンク(msdn2.microsoft.com)(VS.80).aspx
>>530
CrystalReportかActiveReportがいいんじゃね
532:nobodyさん
07/04/07 22:56:30 rFvkM9fc
コンフィグ項目がかなり多いアプリを作っていて、カスタムセクションハンドラを実装して設定を
ハンドリングしているのですが、余計な項目がWeb.configに記入されてしまい困っています。
こういう場合、お作法的にどのような方法をとればよいでしょうか?
それと、別の.NETプログラムからWeb.configの値をプログラム上からプロパティのような形で変更することは可能でしょうか?
システム構成によって、使用不可能なセクションをまったく表示しないようにしたいのですが・・
533:nobodyさん
07/04/08 03:34:00 EVMLEL7f
ASP.NETのWEBフォームで、明示的にJavaScriptを使用しない方法ってありますか?
あったらご教授願います。
よろしくおねがいします。
534:nobodyさん
07/04/08 10:55:27 QKrXdLid
URLリンク(www.friendlysw.com)
ここのサイトでこのような記述があったので、アトラスで作ったサイトをAJAX1.0環境で動かすため
下記3つをインストールしましたが、atlasのところでエラーになりました。
インストール後の設定はどの様にすればよいでしょうか?
よろしくお願いします。
ASP.NET AJAX v1.0 RTM(製品版)がリリースされまし た!
ASP.NET 2.0 "AJAX" v1.0 RTMがリリースされました。
RTM版では"Atlas CTP"のすべてのサーバーコントロールがサポートされていません。
Atlas CTPと同等機能が必要なときはAJAX January CTPもインストールします。
同様に、"Atlas Control Toolkit"の機能が必要なときは AJAX Control Toolkitをインストールします。
535:nobodyさん
07/04/08 11:32:56
ボタンコントロールのIDには、日本語は使えないの?
(´・ω・`)
536:nobodyさん
07/04/08 12:18:53
プログラムで日本語って。
537:nobodyさん
07/04/10 14:54:56
ASP.NETを使い、Accessらデータを引っ張ってくる練習用プログラムを組んでいるんですが、
データロード中に、「検索中です」等のGIFアニメを表示することはできるでしょうか?
ボタンを押したらImageコントロールのVisibleをtrueにして、受信が終わったら
trueにする、という方法で実装できないか、と考えているんですが、そのタイミングが
見つかりません。。。
538:nobodyさん
07/04/10 17:56:02
クライアント/サーバの区別がつかないゆとり世代がもう迫って来てるんだな・・・
539:nobodyさん
07/04/11 00:06:00
>537
JavaScriptでImageを表示して、PostBackしたら消しせば。
540:nobodyさん
07/04/11 11:09:27
>>534
RTM CTP Toolkit、全部AJAXをインストールして、Atlasはインストしちゃいけないのでは?
>>535
㍉
>>537
以下は可能かどうかわからんけど、アイデアとして。
aspはデフォでhtmlを全部作成してから一気にブラウザに送信させるんだけど、
htmlを作成(レンダリング)するたびにブラウザに送信するように変更できたはず。
そう設定して画面上部に画像を表示しておいてから、accessデータの表示や、
重い処理を行わせるようにする。
んで、JavaScriptのbodyタグのOnLoadイベント発生時に、
表示している画像を消すということをすれば、擬似的に可能かもしれん。
まぁ、一番簡単な方法としては、AJAXのUpdateProgressを使うことじゃないかと思う。
541:nobodyさん
07/04/11 20:05:13 ofhJt7wg
Webconfigに
<globalization requestEncoding="shift_jis" responseEncoding="shift_jis" />
を追加すると確かにリクエスト・レスポンスともシフトジスになるけど
これだけWebconfigのあるフォルダ内のすべてのaspxが影響をうけてしまう
同一フォルダ内のある特定のページだけをシフトジスにする方法はないでつか?
542:nobodyさん
07/04/11 20:21:20
>>541
その画面のpageディレクティブでCodePageかResponseEncodingあたりの設定をしてみたらどうかね
おれはやったことないが
543:640
07/04/12 17:33:27 +yX9qbQy
GridViewにユーザーコントロールを埋め込みたいんですが
データバインドの方法がいまいちわかりません。
例えばユーザーコントロールにPublic Propertyを宣言して
ここにデータをバインド、PreRenderイベントでユーザー
コントロール内を動的に生成したいのですが
まずGridViewのフィールドのデータバインドを設定する
ウィザード?にユーザーコントロールのPropertyが
表示されません。
まだGridViewへのデータバインドは解決してない
(テーブルがまだ決まってない)のですが、それが
原因でしょうか?
なるべく歩きやすい道を教えてくださいお願いします。
544:nobodyさん
07/04/12 17:47:42
>>543
GridViewは使わないので外してたらすまん。
・DataBndするデータがネストされた子データ
デザイナでユーザコントロールに
DataSource='<%# thisGetChildData(Container.DataItem)%>'みたいに記述して、
protected rows[] GetChildData(Object dataItem)のメソッド内で
DataItemからDataRowを取得して、GetChildRowでRow[]を返せばよろし
・まったく関係ないデータ
ユーザコントロール内でデータを取得してバインドしちゃえば?
というか素直にRepeaterを使った方がいい気がする。
545:nobodyさん
07/04/12 22:15:58
>>544
ありがとうございます。まさにネストされた子データを表示したかったんです。
Repeaterを使うべきかなーとは思っていたんですが、2005は使い慣れてなくて
便利な機能が増えてるので知らないで苦労したら損と思い、スマートタグに
表示されるデータバインドで解決しようとよけいな苦労をしてしまいました。
おかげさまですっきりしました。
546:nobodyさん
07/04/13 01:24:33 F/O/biBk
511のサイトがわかりにくいんだが、
もっと簡単に説明してるページとかない?
547:nobodyさん
07/04/13 14:44:57
>>546
URLリンク(japan.internet.com)
548:nobodyさん
07/04/13 15:24:06
xmlDocumentクラスのばーやばーや
xmlが分からないと使えないなんて面倒くさいんだよ!!
…もうだめぽ…
549:nobodyさん
07/04/13 19:18:02
ASP.NET 2.0 VIsualStudio2005 C#でWebuserControlを作ってるんだが、
イベント作成してもイベントインスペクタ(?)に作ったイベントが表示されない(´Д⊂グスン
いちおうclass内でpublic event EventHandler PageLoadedと定義してるんだけどうまくいかん。
ちなみにWindowsFormでユーザコントロール作るとちゃんと表示されるんだけど、
なんでWebユーザコントロールだとだめなんだろう・・。
誰かしってる人がいたら教えてください。・゚・(ノД`)・゚・。 うえええん
550:nobodyさん
07/04/14 11:13:15 gbSM0vt5
VS2003って使い勝手悪いな・・・
2005使いたいけど仕事では2003じゃないと駄目なんだ・・・
オワタ・・・
551:nobodyさん
07/04/14 14:41:22
弘法筆を選ばず
552:nobodyさん
07/04/14 14:46:25
>>551
俺が悪いって事か・・・orz
553:nobodyさん
07/04/14 15:47:59
>550
Vista対応を名目に2005に移行を促すのも手だと思うよ。
Vista上で1.1でもだいたいはそのまま動くからそれほど強く言えないけど。
554:nobodyさん
07/04/14 16:29:19
新卒が同じようなこと言ってたな
まだ2003使ってるんですか?って。
555:nobodyさん
07/04/14 17:22:34 bTaKBGMC
2003も出た当時はアレだったんだが
2005と比べるとインテリセンスが微妙だしクリックワンコもついてないし
でも2003ならSp2で1.1入れてるやつ多いだろうから配布のときらくだ
556:nobodyさん
07/04/14 17:24:19 bTaKBGMC
>>547
とんくす。
スンゲーわかりやすい
557:nobodyさん
07/04/14 17:46:52
545です。
再び困りました。
型指定付きのDataSetにストアドの結果2つを追加してリレーションシップを設定しました。
で、ネストしたRepeaterに
<asp:Repeater ID="Repeater2" runat="server" datasource='<%# Ctype(Container.Dataitem,DataRowView).CreateChildView("UserPageURLs_UserPageLinkList")%>'>
としてコードビハインドで
Dim ds As New DSUserPages
Dim ta As New DSUserPagesTableAdapters.UserPageURLsTableAdapter
Dim dt As New DSUserPages.UserPageURLsDataTable
ta.Fill(dt, Session("UID"), CType("9999/12/31", DateTime))
ds.Tables.Add(dt)
Repeater1.DataSource = dt
Repeater1.DataBind()
Dim dt2 As New DSUserPages.UserPageLinkListDataTable
Dim ta2 As New DSUserPagesTableAdapters.UserPageLinkListTableAdapter
ta2.Fill(dt2, Session("UID"))
ds.Tables.Add(dt2)
こんなことやってますが、リレーションシップがこの DataView がポイントするテーブルの親になっていません
というエラーが出ます。
ネスト部分を消すとRepeater1は正常にデータを表示できます。
リレーションやキーの設定は間違ってないと思うのですが、どういうことでしょうか?
こんなエラーはよっぽどの間抜けらしくヘルプでも項目が見つからないのです。
558:nobodyさん
07/04/14 18:17:50
>>557
追記。
ここでもエラーが出てました。
>ta2.Fill(dt2, Session("UID"))
追加しようとしたテーブルがインデックス違反をしているそうです。
これが原因かもしれません。
559:344
07/04/14 19:34:32
>>557
544です。
VisualStudioで、型指定付きのDataSetのxsdを作成してるのかな?
んで、そのデザイナ画面上でリレーショナルを設定しているということかな?
なら、そのDataTableの使い方がおかしい。
DataSetのインスタンスを生成した時点で、そのメンバであるDataTableも
作成されているので、別途DataTableのインスタンスを生成して、データセットに
addしなくてもいいはず。
必要な宣言は、
DSUserPages ds = new DSUserPages();
DSUserPagesTableAfapters.UserPaggeURLsTableAdapter dt = new .....
DSUserPagesTableAdapters.UserPageLinkListTableAdapter ta2 = new ....
だけ。
DataSetに取得したデータを入れるには
dt.fill(ds.UserPageURLsDataTable)
dt2.fill(ds.UserPageLinkListDataTable)
でok。
別途DataTableを作ってAddしてるのがまずおかしいので、そこから
直してみたほうがいいかもしれない。
それから、コレは好みで、今回のエラーとは関係ないけど、
リレーショナルを設定してるDataSetの場合、まず必要なDataTableを
すべてFillしてからRepeaterとかにBindしたほうがいい。
すべてFillする前に何らかの処理をしようとすると外部キー制約とかで
不注意にエラーになることがあるので、まず完全にDataSetを作ってから
Bindするなり操作する癖をつけたほうがいいよ。
560:nobodyさん
07/04/15 00:33:57
わたしもそう思ったんですが
Dim ds As New DSUserPages
Dim ta As New DSUserPagesTableAdapters.UserPageURLsTableAdapter
(ここでパラメータの処理)
ta.Fill(ds.UserPageURLsDataTable)
ところがここで「ds.UserPageURLsDataTableは型です。式として使用することはできません。」
と言われてしまうんですね。なので型指定付きのxsdはスキーマ情報しか持ってないのか
と思ってインスタンスのDataTableをAddしてたんです。
するとコンパイラは通るのですが、上記エラーが出るんです。
DSUserPages.Designer.vbの中を確認すると
Private Sub InitClass()
・・・
Me.tableUserPageURLs = New UserPageURLsDataTable
MyBase.Tables.Add(Me.tableUserPageURLs)
Me.tableUserPageLinkList = New UserPageLinkListDataTable
MyBase.Tables.Add(Me.tableUserPageLinkList)
Me.relationUserPageURLs_UserPageLinkList = New System.Data.DataRelation _
("UserPageURLs_UserPageLinkList", New System.Data.DataColumn() _
{Me.tableUserPageURLs.UserIdColumn, Me.tableUserPageURLs.URLIDColumn}, _
New System.Data.DataColumn() {Me.tableUserPageLinkList.UserIdColumn, Me.tableUserPageLinkList.URLIDColumn}, false)
Me.Relations.Add(Me.relationUserPageURLs_UserPageLinkList)
End Sub
となっており、仰るとおりにテーブルのインスタンスを作成してるのです。
もうわけがわかりません。w
561:nobodyさん
07/04/15 00:40:21
なんでVBばっかりなんだ?
C#でやってるやつはいないの?
562:nobodyさん
07/04/15 03:25:33
ノシ
確かに検索で出てくるページもVBが多いよね
お陰でVBも読むことは出来るようになってきたw
563:nobodyさん
07/04/15 11:49:38
>>560
追記。
URLリンク(www.microsoft.com)
Public Function GetDepartments()As DsAdv
Dim ds As New DsAdv()
Dim adapter As New DsAdvTableAdapters.DepartmentTableAdapter()
adapter.Fill(ds.Department)
Return ds
End Function
やはりMS様もこれでいいと仰ってます。
DataSetのテーブルかなんかの設定で間違ってるのかなぁ?
564:nobodyさん
07/04/15 12:41:58
>>560
自己レスです。解決しました。
ta.Fill(ds.UserPageURLs,パラメータ,パラメータ)
でコンパイラが通りました。
UserPageURLsがテーブル名でした。
UserPageURLsDataTableはテーブルの型を定義するプロパティだったんですね。orz
オートコンプリートに表示される候補のDataTableという名前で完全に勘違いしてしまいました。
565:nobodyさん
07/04/15 13:18:08
え・・・まさかヘルプも読まないで質問・・・
566:nobodyさん
07/04/15 17:11:09
>>561
俺もC#
VBも書けるけど、なぜかC#で書いてるな。
567:nobodyさん
07/04/16 14:01:35 AFy90HQV
VS2005,C#でSQL2000から2個のテーブルをデータセットに読み込んで
そのテーブルを比較して整合性を取りたいと考えています。
テーブルの内容はAテーブルには日付フィールドと仕事の予定フィールド
Bテーブルには日付フィールドと休日の予定フィールドが入っています。
(A・Bの日付が被る事はありません)
このABテーブルをAテーブルに纏めたいのです。
Bテーブルは終業時、同様の処理をしてバックアップ代わりにします。
普通に考えてBテーブルの全てのROWの日付でAテーブルをセレクトし
てBテーブルに存在しなければROWを追加してやれば良さそうに思うのですが
頻繁に行う事が予想されるので出来るだけ不可の少ない処理で
済ませたいのですが妙案はないでしょうか?
568:nobodyさん
07/04/16 18:58:56 5T51gVIn
漏れもVB
コード変換ソフトとかあるし
VBでもC#でも問題ないんだが
569:nobodyさん
07/04/16 20:49:06 68o6OWMk
>>568
c#で書いたのをVBに変換するのってあるでしょうか?
570:nobodyさん
07/04/16 22:40:18
>>569
C#VB 変換 でググれ
基本だろ
571:nobodyさん
07/04/16 22:48:59
J#使う人って稀?
572:nobodyさん
07/04/16 22:52:02
>>567
AとBの日付が絶対にかぶらないならSelectしたBをそのまま
Insertすればいいんでないの?
も負荷を小さくするならストアドをかな。
もしくはAとBをUnionしたものをビューに登録。
さらにAテーブルをRIGHT OUTER JOINして、追加したフィールドが
nullのものだけをWHEREで切り取る。
そうすればAになくてBにあるものだけが抽出できる。
つかそのままAとBをunionしたビューをそのまま使い続けて、
新しいテーブルに、そのビューの内容をコピーしたほうが
簡単な気がする。
573:nobodyさん
07/04/17 19:45:43 OYnOoGtS
>>571
稀だろ
つか使ってる奴みたことねぇ
J#つかうならJavaのほうがいいような気がしなくもない
574:nobodyさん
07/04/17 22:11:02
Visual Web Developer 2005 Express Edition って
M$のサイトからダウンロードできるのと店で売ってるのと
何が違うんでしょうか??
575:344
07/04/17 22:22:37
>>574
本当は期間限定での無償ダウンロードで、その名残。
違いはオリジナルのマニュアルが付くところ。
576:574
07/04/17 23:14:46
>>575
ありがとです。
ってことは、機能的に制限があるわけじゃないんですね。。。
(´ε`;)ウーン…VS2003使いとしては微妙だなぁ。。。
577:nobodyさん
07/04/17 23:17:13
VS2003とか使いづらくて使う気になれん
特にVS2005に慣れたら尚更
578:344
07/04/17 23:31:00
>>576
VWDに関しては、でかいことするんでなければ、
普通に業務用にも使えると思うけどなー。
579:574
07/04/17 23:51:38
>>577
そうなんですよ、、VB6からの乗換えでせっかく慣れてきたのにまたかよ('A`)ノ
って感じですわorz...
M$には、中小企業で開発環境が変わることの大変さを知って欲しいですわ。。
>>578
Webの案件は初めてでVS2003で試行錯誤して、「うひゃっ!なんか出来ちゃったwwwww」
って思ったんだけど、、、、ASP.NET 2.0 ( ゚Д゚)イッテヨシ!!
また試行錯誤してみますorz......
580:nobodyさん
07/04/18 06:09:51 +avfGZDm
VS2005でASP.NET Webサイトを含むソリューションでリファクタ機能やすべての参照の検索など使用すると
毎回aspxなどのコンパイル処理みたいなのが走って、すごい時間がかかるんですが
早くする設定などはあるのでしょうか?
581:nobodyさん
07/04/18 14:11:23
>>580
リファクタやなんやらは、すべてのファイルをgrepして調べてるんだから、
すごい時間がかかるのは当たり前。
ファイルの参照設定をちゃんとやったりして可視性を見直すしかないと思う。
582:nobodyさん
07/04/18 23:14:27 +avfGZDm
レスサンクスです。
通常のWindowsアプリケーションとかだとあんまり時間がかからなかったため
何か設定でもあるのか、自分の環境だけなのか知りたくて質問しました。
今のところ、通常のgrepのほうが断然早いのでノイズが入ってしまうのを覚悟で手動で検索しています。
583:nobodyさん
07/04/19 11:10:59
DROPDOWNLISTのLISTITEMの文字列に文字参照で入ってきたとき、そのまま出ちゃうんだけど
(&#hearts;とか)ちゃんとハートマークにして表示って出来ませんか?
584:344
07/04/19 16:23:20
CustomWebControlを作ればいいよ
DropDownListはRenderContentsメソッド内でデータをhtmlencodeして出力しているらしい。
だからRenderContentsを↓のようにOverrideしてhtmlencodeをはずしてあげればいいはず。
public class NonHtmlEncodedDropDownList : System.Web.UI.WebControls.DropDownListを定義して
protected override void RenderContents(HtmlTextWriter output)
{
int count = Items.Count;ListItem item;bool selected = false;
for (int i = 0; i < count; i++)
{
item = Items[i];
output.WriteBeginTag("option");
if (item.Selected)
{
output.WriteAttribute("selected", "selected", false);
selected = true;
}
output.WriteAttribute("value", item.Value, true);
output.Write(">");
string text = item.Text; ←ここで本当はhtmlencodeされているハズ
output.Write(text);
output.WriteEndTag("option");
output.WriteLine();
}
output.Write(Text);
}
this.NonHtmlEncodedDropDownList1_1.Items.Add(new ListItem("♥", "1"))
これでハートが表示されてる。バグってたらスマソ。
585:nobodyさん
07/04/19 17:04:24
>>584
ありがとう、俺VBしかわからないんだけどなんとなくわかったよ!
HtmlTextWriterがなにやってるかを探してencodeしてる部分だけ差し替えればいいんだよね?
586:344
07/04/19 18:02:09
>>585
HtmlTextWriterは単にタグを作成するのに利用してるだけなので、
それそのものを調べても意味がないかも。
実際の(HtmlEncodeして表示している)RenderContentsメソッドを隠蔽して
別途HtmlEncodeしない仕様のメソッドを定義して利用させるってこと。
そのためにDropDownListの継承classを作成して、RenderContentsメソッドを
overrideするメソッドを作る。
ただし、こうするとタグが自由に利用できてしまうので、
使用可能な特殊コードのみHtmlEncodeを通さないようにして、
それ以外は通常通りHtmlEncodeを通すようにしたほうがいいかもね。
587:nobodyさん
07/04/19 18:41:04
>>586
丁寧にありがとう!
>そのためにDropDownListの継承classを作成して、RenderContentsメソッドを
>overrideするメソッドを作る。
これをやってみたんだけど「その型 (test.NonHtmlEncodedDropDownList)はコントロール (System.Web.UI.WebControls.DropDownList) の型と互換性がありません。」
っていわれちゃった…
この作った継承クラスで目的のDROPDOWNLISTを定義してるのが間違ってますか?
588:344
07/04/19 18:48:58
>>587
vb.netの言語仕様に関してはちょっとわからない。
↓を参考にしてみて挑戦してみてください。
URLリンク(www.atmarkit.co.jp)
589:nobodyさん
07/04/19 19:42:43
ありがとう、がんばってみます!
590:nobodyさん
07/04/20 12:16:41 ev1GBwjC
>>580-581
リファクタリングを早くする方法は
スレリンク(tech板:13番)
を参照のこと。
ただそれによって早くなるのは
スレリンク(tech板:40番)
という理由らしいから、使い方はお気をつけて。
591:nobodyさん
07/04/20 13:04:58 B09CNaZo
沖縄県の方へ(命に関わる注意事項です)
沖縄県での選挙ですが、どうか民主党だけは避けてください。県民の生命に関わる可能性があります。
民主党の最大の公約は一国二制度(※)ですが、一度「一国二制度 沖縄 三千万」で検索をお願いします。
この際、民主党のHPで調べても良いです。以下の注釈↓と矛盾することは書いてないはずですから…
※一国二制度
簡単に言えば沖縄を中国と日本の共有物にし、そこに3000万人の中国人を入植させます。
(つまり沖縄人口の 96% を中国人にして、実質、沖縄を中国人の居住地とします。)
さらに「自主」の名の下、沖縄で有事が起きても自衛隊は干渉できません。
3000万人の中国人が、少数派となった130万人の日本人に何をしても、です。
そして反日教育を受けた中国人の反日感情の強さは、ほとんどの日本人の理解を超えるものです。
今回の選挙で民主党が勝った場合、「自主」「発展」を連呼しつつ段階的に進めていくことになります。
自主と言っても、自主を認めるのが「住人の96%が中国人となった」後だということに気をつけてください。
発展と言っても、新沖縄の少数派となった「少数民族日本人」の発展ではないことに気をつけてください。
592:582
07/04/21 00:50:22
>>590激しくサンクス
今まで、しょうがないんでWebサイト切り離してリファクタしてました。
593:nobodyさん
07/04/22 00:20:10
経験豊かな方ご教示願います。
ある事情があって先にHogeServerというconnectionStringsを使っていました。
で、ユーザー認証その他の機能を使いたくて以下のように変更しました。
<connectionStrings>
<remove name="LocalSqlServer" />
<add name="HogeServer" connectionString="以下略
</connectionStrings>
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15">
<providers>
<clear />
<add
name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="HogeServer"
applicationName="Hoge"
以下略
こうしたところ、ユーザーの登録や削除はASP.NET構成ツールでうまく機能しました。
ユーザー登録関連のコントロールもちゃんと動きます。
ところが、ロールの設定やプロバイダの設定でエラーがでます。
どうもmachine.configに上書きしてない"LocalSqlServer"という項目がかなり残ってるようです。
こんなとき、みなさんならどうしますか?
1.machine.configを検索して"LocalSqlServer"の項目をすべて"HogeServer"に書き換える
2.machine.configを検索して"LocalSqlServer"の項目をすべてweb.config上でRemoveして"HogeServer"に書き換える
3."HogeSerVer"を"LocalServer"に戻してコードの中の"HogeServer"をすべて書き換える
どんな影響があるのか不安でどうしたらいいかわかりません。ご意見をお願いします
594:594
07/04/22 10:26:39 g6P3Re1p
認証関連ですがお手上げなんで教えてください
Windows Server 2003 R2で,
テキストファイルで作成したC#のdefault.aspxに
URLリンク(localhsot)のようにアクセスすると認証のダイアログが出ず,
URLリンク(127.0.0.1)のようにアクセスすると認証のダイアゴルが出てしまいます.
認証のダイアログを出さないようにするにはどう設定したらよいのでしょうか???
IISのディレクトリセキュリティの設定では,「匿名アクセスを有効にする」と「統合Windows認証」にチェックが入っています.
ファイルのセキュリティでは,NETWORK SERVICEが読み取りと実行が可能になっています.
595:nobodyさん
07/04/22 14:13:19
>594
Windows認証が効いてるんだろ?
チェック外してみろ。
596:nobodyさん
07/04/22 23:29:14
Webアプリ久々に開発することになって、最近ASP.NET2.0弄り始めたが
なんだこれ・・・過去に苦労してたのがすっげー楽に実現できる。
カルチャーショックだな
597:nobodyさん
07/04/23 10:11:07
デカルチャー
598:nobodyさん
07/04/23 11:16:42
>>596
俺も6年ぶりぐらいにWebアプリに戻ってきたけど、かなりのカルチャーショック。
ADO.NETの仕組みとか、.NETのライブラリの基本とかが膨大すぎて覚えるのが大変。
オブジェクト指向は過去に経験しててよかったとオモタ
クラシックなaspの仕組みしってるとasp.netの裏側も見えるので損ではないとオモタ
599:nobodyさん
07/04/23 22:52:53 SAH2Jxj+
だが逆にHTMLを自前で吐くようなperlとかつかってたころには
あっさりとできたものが、ASP.NETではできないとか
やりかたが複雑とかわかんないとかいうのがあって
むかつくこともないわけではない
600:nobodyさん
07/04/23 23:15:20
ないと思うが。
601:nobodyさん
07/04/23 23:34:14 Qv1rWHCm
ASP.NET2003での質問
複数の画面を同時に出すフレームワークについて。
あるフレームワーク処理関連を全てコピーして、
別のフレームワークを作ったら、両方とフレームワークが効かなくなってしまった。
原因が全くわからない。
一番、多い原因は何ですか?
リンク・コード内の名前直しは間違ってません。
602:nobodyさん
07/04/23 23:41:44
いい加減意味不明な言葉を直せよw
603:nobodyさん
07/04/23 23:44:13 Qv1rWHCm
すまない。
つまるところ、フレームワークをコピペして、
一つのプロジェクトの二個のフレームワークが出来ました。
そしたら、二つとも画面の合成が効かなくなってしまった。
エスパー希望
604:nobodyさん
07/04/24 00:12:07
言ってることがわかんね。
605:エスパー
07/04/24 01:24:00
ふむ見えた。
この問題を解決できるエスパーは現れないみたい。
残念ですた。
606:nobodyさん
07/04/24 12:30:12
>>601
意味不明だが、なんかが重複定義されてるんじゃね?
607:nobodyさん
07/04/24 16:19:21
あるフレームワーク処理関連を全てコピーして、
別のフレームワークを作ったことが原因では?
これが一番多い原因だと思う。
608:nobodyさん
07/04/24 19:00:49
単品フレームワークでの動作は完璧?
だったらもう一度ソースの中の名前をスミズミまで見てみれ
意外な所に自動生成された名前があったり必要な宣言がされてなかったり…
609:nobodyさん
07/04/24 19:03:45
だいたいフレームワークってなによ?
610:nobodyさん
07/04/24 22:43:33
ざんねんながら単なるフレームのことなんだなこれがw
611:nobodyさん
07/04/24 23:06:20
単なるフレームかよ。シネヨ。
ディレクトリが違うから絶対パスで記述しても、そんなファイルねーだけだろ。
わざわざasp.netスレで聞くんじゃねー
612:nobodyさん
07/04/25 00:27:48
フレームワークってaspxのことかな・・・と思ったが違うのか。
よくaspxをコピペするときにRegisterブロックあたりまでコピペしてしまって
コンパイルエラーの原因がわからず泣いてる奴がいるよな。
613:nobodyさん
07/04/29 15:25:29
開発環境からページの実行をしたときに使うWebブラウザはどこで指定できるんでしょうか?
標準のブラウザを火狐等にしても、IEが立ち上がってきてしまいます。
オプション等を全部見たのですが、環境のところにWebブラウザという項目があったものの、
それらしいところが見つけられませんでした。
614:nobodyさん
07/04/29 16:31:14
ソリューションエクスプローラで.aspxファイルを右クリして出てくるメニューに
デフォで"Webページの実行"みたいな名前の項目のすぐ下に
Webブラウザを選択して表示みたいな項目があってそこで
ブラウザの変更はできた。
項目の正式名称は忘れたw
615:nobodyさん
07/04/29 22:38:45
データをDBから読み込んで、DataGridで表示しています。
ソートせずに、そのまま更新ボタンおせば該当行が更新モードになります。
しかし、ソートした後に更新ボタンを押すとソート前の行が編集モードに
なってしまいます。いろんなサンプル見ましたが、このことにふれたソース
がなく、悩んでいます。どなたかご存知でしたら教えてください。
616:nobodyさん
07/04/30 02:26:32
書き方悪いので訂正します。
データをDBから読み込んで、DataGridで表示しています。
ソートせずに編集ボタンおせば該当行が編集モードになります。
しかし、ソートした後に編集ボタンを押すとソート前の行が編集モードに
なってしまいます。いろんなサンプル見ましたが、このことにふれたソース
がなく、悩んでいます。どなたかご存知でしたら教えてください。
617:nobodyさん
07/05/01 06:32:36
>>614
サンクスです。
休み明けにやってみます。
618:nobodyさん
07/05/01 20:11:30
>616
自己レス。
解決しましたのでこの質問はなし。
619:nobodyさん
07/05/04 14:59:15 Fic8rDCB
2003 SERVER+ADSLですが先日無線ルーター(現在はLANで接続)を入れたら「localhost」ではサーバーを立てているPCから接続できなくなりました。
LAN内の別PCや自宅PCからは普通に接続できます。
そしてなぜかASP.NET自体タイムアウトで接続できない状態です。
再起動するもダメです。
何か設定が必要なのでしょぅか?
620:nobodyさん
07/05/04 19:59:17
>2003 SERVER+ADSLですが先日無線ルーター(現在はLANで接続)を入れたら
どんなネットワーク構成図?
どんなネットワークではうまくいっていて、そのネットワークの何をどうしたの?
>現在はLANで接続
現在はって、昔はWAN接続?
>「localhost」ではサーバーを立てているPCから接続できなくなりました。
localhostで、何から何に接続できないの?
>LAN内の別PCや自宅PCからは普通に接続できます。
サーバと同一LAN内の別PCや自宅PCでlocalhostで接続したの?
>そしてなぜかASP.NET自体タイムアウトで接続できない状態です。
どこから接続してタイムアウトになるの?
「なぜか」だと思う理由は?
サーバのIPアドレス直入力では接続可能?
127.0.0.1ではどう?
621:nobodyさん
07/05/07 00:54:06
Cookielessモードについての質問。
AutoDetectに設定すると検索ロボットからのアクセスでログが荒れる
のだけれども、UseDeviceProfileだと設定を作っていくのが面倒。
しかもプロファイルを設定してないUAでくると……
UserAgentに「Yahoo」とか「Google」の文字があったら無条件で
非Cookielessセッションに切り替える方法ってない?
現在はUseDeviceProfileを使用してMozillaを継承したbrowserファイル
でなんとか制御中。Defaultを直接継承して「yahoo」にマッチするように
設定してみたんだけど、なぜかMozillaのほうが優先されてしまう。
622:nobodyさん
07/05/07 22:11:59 28dJTdJ9
>>600
本当にないと思ってるのか
直接Writeしないとできないことはまだ多い
623:nobodyさん
07/05/07 22:15:22
直接Writeしたら少なくとも同じことはできるだろっつってんだよ。
624:nobodyさん
07/05/08 02:35:36
DBからデータ読み込んで、動的にグラフを作成して表示するって可能なんでしょうか?
普通のFormならpictureboxを使用して描画できると思いますが、ASP.NETではどのような手法がありますか?
625:nobodyさん
07/05/08 09:21:32
>>624
System.Drawingを使うのだよ。
サンプルは腐るほどころがっている
626:nobodyさん
07/05/08 10:04:00
POSTされたXMLデータはどうやって取得するのですか?
たとえば、blogにあるwebPingを受け付けるサービスを作りたい場合、
blogからpostされたxml形式のwebPingの内容を取得する方法を教えてください。
627:nobodyさん
07/05/08 11:04:40
URLリンク(pietschsoft.com)
で、正規表現を使ったURL書き換えが紹介されていたので早速実装してみました。
書き換え規則はこんな感じです。
<add url="~/users/(.*)\.aspx" mappedUrl="~/users.aspx?u=$1"/>
URLの書き換えはうまくいったのですが、そのファイルの中に
<script type="text/javascript" src="js/swfobject.js"></script>
<link rel="stylesheet" type="text/css" href="css/RootStyle.css" />
などの外部ファイル参照があるのですがこれらがことごとく失敗します。
開発中の環境とURLが違うためにURL指定することはなるべく避けたいわけです。
そこでsrc="/js/swfobject.js"のようにルートからの絶対パスで書いたのですが
これもうまく解釈されません。
なにか上手い方法をご存知ありませんか?
628:624
07/05/08 11:31:36
自由に描画した画像を出力する場合に、
bitmap.Save(Response.OutputStream, ImageFormat.Jpeg);
とすると、新しいページに画像だけが表示されますが、
特定のImageコントロールに表示するには、やはり画像
ファイルを一時保存して、ImageUrlを指定しなければならないでしょうか?
629:nobodyさん
07/05/08 12:15:21
>>626
xmlっても普通にstringのpostだからRequest.Formで取得できるのでは?
>>627
それじゃ、そのaspxのあるディレクトリ配下指定だよ。
HttpServerUtility.MapPathのServer.Mappthを使うと幸せになれるかも。
630:nobodyさん
07/05/08 12:25:43
>>628
昔、classicなaspでやってたときは、確か、たとえば
bitmap.aspで、Response.BinaryWriteでbitmapを出力するだけのaspを作って、
<img src="bitmap.asp">とかってよくやっていたものだが、
同様にして、BitmapButtonのImageUrl="bitmap.aspx"すればだめかな?
631:nobodyさん
07/05/08 13:09:10
>>630のはASP.netでもその方法は使える。
Bitmap出力するだけならashx使っても良いし、
またはdefault.aspx?mode=bitmapみたいな
urlをImageUrlに使ってクエリ文字列"mode"が"bitmap"
の時は画像を出力するというふうにしてもいいと思う。
データの受け渡しはSession変数使うのがいちばん簡単かな。
632:nobodyさん
07/05/08 13:24:41
補足。
データの受け渡しってのはbitmapのことじゃない。
ページのクラスのフィールドに文字列を保存しても次のリクエスト時には消える
から、何か画像の生成に必要な一時データがあるならの話ね。
633:nobodyさん
07/05/08 13:29:02
>>629
stringのpostだけど、Formの名前?がわからない。
URLリンク(www.nurs.or.jp)
FormのTextをSubmitするのではなく、こんな感じで送られてくるので。
634:nobodyさん
07/05/08 13:41:15
>>632
DataBaseのPrimayKeyとかを渡して、そのIDの画像を表示するとかのことね。
ただSessionが消えることを考えると、文字としてaspxに埋め込まれるGETの方が
ブラウザのキャッシュに残ったときや、戻る進むで遷移したときに対処しやすい。
そもそもSessionでデータを引き渡すだけでいいなら、aspx?mode=bitmapも必要ないし。
>>633
そのaspxに対してstringなデータとしてpostされてくることは確かなわけ?
であれば、Request.FormはRequest.Form[i]のようにindexで取得できるのでキー名は不要。
もし知りたいならRequest.Form.AllKeysですべてのキー名が取得できるが、試してみた?
まずはmsdnを嫁。
635:nobodyさん
07/05/08 13:50:10
>>629
そのようですね。
/を最初につけるとルートからの指定ってのがあったと思ったんですけど。
./と同じ解釈になってしまうのってなんか釈然としません。
まーDosやうにくすとは違うってことでしょう。
>HttpServerUtility.MapPathのServer.Mappthを使うと幸せになれるかも。
物理アドレスがソースに含まれてしまうみたいですね。
これは怖いです。
RequestからUrlのベースをパースするとかめんどくさいことやればなんとか
なりそうですが、書き換えルールにディレクトリを含めるのをやめるのが
一番簡単かもしれないですね。
<add url="~/users_(.*)\.aspx" mappedUrl="~/users.aspx?u=$1"/>
636:nobodyさん
07/05/08 13:56:01
>>635
いやだから、物理アドレスから、IISでいうところのwwwrootまでを削れば、
IISのルートフォルダを起点とした絶対パスが取得できるのでは?
(デフォルトのIISのインスト環境)
それがいやなら、完全に手動で
../../../js/swfobject.js
のようにルートまで/../../を使ってもどって指定してやればいい。
↓参考
URLリンク(www.ipa.go.jp)
637:nobodyさん
07/05/08 14:08:39
>>634
>そのaspxに対してstringなデータとしてpostされてくることは確かなわけ?
確かなわけです。 というか、webPingの仕様がそういうものだから。
Request.Form.AllKeysは気付かなかったけれど、
Request.ContentTypeが"text/xml"であることを確認してRequest.InputStreamで全部ぶっこぬいたらうまくいきました。
たぶん。
638:nobodyさん
07/05/08 14:32:11
>>636
ああ、なるほど。
IISのルートフォルダを起点とした絶対パスは
どちらも同じなんですよ。
そのルートフォルダを起点とした絶対パスを
うまく指定する方法がなくて困ってるわけです。
開発環境
localhost/js/…
localhost/css/…
公開AP
www.app.net/js/…
www.app.net/css/…
アプリケーションファイルがルートにある間は"js/…"でいいわけですが、
localhost/app.aspx?user="username"
URL書き換えによってアプリケーションファイルのフォルダが
localhost/user/username.aspx
に偽装されてしまったため、相対指定で対処きなくなったんです。
パラメータが動的に増えて階層が動的に変化する場合もあるわけで
せっかくURLの書き換え規則が正規表現で書けるようになったので
それをフルに使いたいと思ったんです。
ひょっとして"/js"などのルートからの絶対指定ができないのは、
ASP.NET開発サーバだけですか?
IISならできるとか?
639:nobodyさん
07/05/08 14:51:08
>>638
そうか、その絶対パスでみれないからだめなのかorz
すまなかった。お詫びにこんなもの探してきた↓
VirtualPathUtility.MakeRelative("/design/css/main.css", "/images");
640:nobodyさん
07/05/08 15:00:37
他にはここが詳しいな。
URLリンク(msdn2.microsoft.com)(VS.80).aspx
641:nobodyさん
07/05/08 16:11:39
>>639>>640
そうそう。そうなんです。
これからじっくりと試してここに報告に来ますね。
まだ解決できたわけではないけれど、おかげで十分幸せになれました。
ほんとにうれしかったです。ありがとう。
642:nobodyさん
07/05/08 17:06:46
>>634
それもそうだね。
?mode=bitmap&id=1&key=xxxxxみたいな感じでクエリ文字列にデータを含める方法ね。
そういう方法でするなら画像生成部分を別のaspxに分離したほうがスマートだ。
あくまでもwinのGUIに近い感じで開発したい場合、
クラスのフィールド変数を使っては値をやりとりできないため
別の方法で値のやりとりしなければいけない(Session変数など)
という注意点を書きたかっただけだから混乱させてしまったかな。
その方法は、別にSession変数でなくても>>634の方法でもいい。
用途によるけど、履歴に残したくない、表に変数内容を出したくない場合
(キーに顧客の氏名、キャプチャイメージの文字列などが含まれるなど)はやはり
URLのクエリ文字列に含めるのは好ましくない。
なおかつ表示が一時的で良いならSession変数を使うほうが良い。
まぁ複数の画像を生成する必要がある場合?mode=bitmap&img=hoge
みたいにクエリ文字列を追加しないといけないけれど。
それ以外だったら>>634の方法のほうがむしろいいかも。
追伸
Session使った場合も動作の安定性を確保するために?mode=bitmapは最低限必要。
643:nobodyさん
07/05/08 20:13:20
>>642
>あくまでもwinのGUIに近い感じで開発したい場合、
なるほど。asp.netはwebの概念とWindowFormの
概念が混じってるから難しいね。
一番良いのは動的に生成したBitMapを直接、
指定できるカスタムコンポーネントを作ることだねぇ。
644:624
07/05/08 22:50:44
>>628
>>639
すばらしいです。ありがとうございます。
ただ、ashxで試しに折れ線を描画してJpeg画像作成してみたのですが、
折れ線がガタガタな画像が表示されました。
品質を指定すれば改善するのでしょうかね・・・。また明日試してみたいと思います
645:nobodyさん
07/05/08 23:06:48
>>644
ヒント:
Graphics.SmoothingMode
646:nobodyさん
07/05/09 14:53:51 189NeqEf
.aspxで参照設定したDLLから同一ディレクトリ内の別のサブディレクトリにある
XMLファイルのパスの取得は出来ないんでしょうか?
wwwroot
└hoge
├a.aspx
└ hoge2
└b.xml←このファイルのパス
DLLではserver.Mappathは使えないですしa.aspxから引数として
ファイルパスを渡すのも仕様上NGで絶対パスをベタ書きするのもNGです
とにかくxmlファイルの内容をa.aspxで参照しているDLLから取得出来れば良いのですが…
647:646
07/05/09 14:56:50
すいません、なんか質問内容がブレてますね…
したい事はxmlファイルの内容をDLLから取得です。
相対パスはその為の手段として思い付いた事っす。
648:nobodyさん
07/05/09 16:08:06
>>646
-----------DLL.cs-------------
string foo = ConfigurationSettings.AppSettings["bar"];
XmlDocument myDoc = new XmlDocument();
myDoc.Load(foo);
-------------web.config--------------
<appSettings>
<add key="bar"
value="~/b.xml" />
</appSettings>
これじゃだめなの?
直接関係ないけど、変数名にhoge使う奴はしね
649:646
07/05/09 16:48:09
>>648
ありがとうございます。
web.configファイルの存在を忘れてました…
試してみます。
ちなみに…GW明けで修正案件4件以上入ってきたのでマジでしねそうです…
650:646
07/05/09 18:18:52
>648の方法を試してみたのですが
>xmlDoc.Load(foo);
の部分でファイルパスが絶対パスに変更されwin32\\system\\...のような形に
なってしまいアクセスしたいファイル意外のパスを参照してエラーがででしまいます。
むぅ…DLLのコード内でWebアプリのパスだよと指定する方法があるのでしょうか?
651:nobodyさん
07/05/09 18:36:40
>>650
ありゃ。 じゃあこれはどう!?
-----------DLL.cs-------------
public void trymefunc(HttpApplication app)
{
string foo = app.Request.MapPath("~/b.xml");
XmlDocument myDoc = new XmlDocument();
myDoc.Load(foo);
...
}
-----------default.aspx.cs-------------
protected void Page_Load(object sender, EventArgs e)
{
...
xxx.yyy.trymefunc((HttpApplication)sender);
...
}
なんか駄目かもしれんけどさ。
652:nobodyさん
07/05/09 18:38:31
だめだね。 キャストがむちゃくちゃ。 しね>>651
653:nobodyさん
07/05/09 18:43:12
>>652
うるせーはげ
よし。わかtった。
651をちょっと変更しる。
-----------default.aspx.cs-------------
protected void Page_Load(object sender, EventArgs e)
{
...
xxx.yyy.trymefunc(ApplicationInstance;);
...
}
korede ikeru hazu
654:nobodyさん
07/05/09 18:47:30
おっと、セミコロンがちょっと多すぎたぜ
655:646
07/05/09 18:59:51
レス本当にありがとうございます。
そちらも試してみたいと思います。
納期が厳しいので最悪のケースはDLLにグローバル変数pathを追加して
セットアクセサでa.aspx.csからpathに値をsetするような形になりそうというか
この方が楽なんですがこちらを選んだら負けのような希ガス
656:nobodyさん
07/05/09 19:49:11
>>655
System.IO.Path.GetFullPath
は使えないかい?
657:nobodyさん
07/05/09 21:31:20
>>646
つ URLリンク(www.abc.fscs.jp)
こんなんでどう?
658:nobodyさん
07/05/09 21:47:21
なんでぇ、ServerMapPathつかえるじゃん。
659:639
07/05/09 22:13:34
しんじまえ
660:nobodyさん
07/05/10 00:21:02
>DLLではserver.Mappathは使えないですし
使えるよ。
661:646
07/05/10 03:06:43
まさかこんなにレスが貰えるとは。
本当に感謝です@デスマーチ中
>656
GetFullPathはwin32\system\...だったか求めているパスが返ってこなかったです。
>658,660
DLLからserver.Mappathを使う為のヒントをいただけないでしょうか?
昼間ググったりリファレンスを読んだ限りは見つけられなかったもので…
662:nobodyさん
07/05/10 10:11:51
>>661
657のリンク
663:nobodyさん
07/05/10 11:00:41
初心者すぎてわけのわからない現象で悩んでます。
自前のSQLサーバーでユーザー管理をすべく
URLリンク(www.microsoft.com)
などを参考に設定をしてみました。テーブルは自動的に作成されました。
で、トップページに貼り付けたLoginコントロールではSQLサーバーに
要求が届き、名前とパスワードが正しい場合エラーメッセージは出ません。
がトップページに貼り付けたUserNameコントロールにはユーザー名が出ません。
Login状態が保持されてないみたいです。
この状態でセキュリティ設定されたディレクトリへ移動するとLoginページに
リダイレクトされてしまいます。
で、LoginページのLoginコントロールにユーザー名パスワードを入力すると
「ログインに失敗しました」と表示されますが、このときSQLサーバーには
なんの要求も来ていません。
Loginコントロールはどちらもドラッグして置いただけです。
CreateUserWizerdではユーザーの登録ができます。
何度か削除したり置き直したりしても変わりませんし、トレースしようにも
コードがないのでトレースできません。
あとはどこをチェックすべきでしょうか?
664:663
07/05/10 11:02:01
web.configはウィザードが設定したものですが、多少いじりました。
<roleManager enabled="true" />
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15">
<providers>
<clear />
<add
name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="ConnectionString"
applicationName="ImageTracker"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="true"
minRequiredPasswordLength="5"
minRequiredNonalphanumericCharacters="0"
passwordFormat="Hashed" />
</providers>
</membership>
665:663
07/05/10 11:03:03
…
<authentication mode="Forms">
<forms name="AppNameCookie" slidingExpiration="true" loginUrl="Login.aspx" timeout="1440"
path="/members" cookieless="UseCookies" />
</authentication>
<authorization>
<allow users="?,*" />
<allow roles="members" />
</authorization>
セキュリティ設定されたディレクトリのweb.config
<authorization>
<allow roles="members" />
<deny users="?" />
<deny users="*" />
</authorization>
hogeは使ってないので優しく教えてください。お願いします。
666:nobodyさん
07/05/10 11:08:17
>>664
先にこっちやってごらん。
msdnのサンプルはよくわからんことが多い。
URLリンク(www.atmarkit.co.jp)
667:nobodyさん
07/05/10 11:12:58
あとここらへんとか。
URLリンク(www.atmarkit.co.jp)
こういう関係の仕組みは使えそうだけど、結局、自分好みや顧客の要求に応えられる
拡張ができなくて自作になることが多いので、深く知る必要はない気がするが勉強にはなるかも。
668:663
07/05/10 15:52:24
>>666>>667
ありがとうございました。@ITの記事は読みやすいですね。
Login.aspxをページごと削除してみたら認証はできるようになったみたいです。
イベントハンドラが壊れてたのでしょうか。
ただ、認証は成功したもののページへのリダイレクト、認証状態の継続はしていない
ようで、相変わらず目的にページに到達できません。
試しにリダイレクトのコードを直接書いてもifは通過するものの
RedirectFromLoginPageは無視されます。
エラーも出ないところを見ると飛び先の保存がされていないみたいです。
別のソリューションを新規作成して環境からチェックしてみるかないみたいです。
Protected Sub Login1_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) Handles Login1.Authenticate
If Membership.ValidateUser(Login1.UserName, Login1.Password) Then
FormsAuthentication.RedirectFromLoginPage(Login1.UserName, True)
End If
End Sub
669:nobodyさん
07/05/10 16:20:28
>>668
アンチウィルスとか、なんたらゲートウェイとか、
ブラウザのなんちゃらとかで、クッキーとか自動的に削除したりしてない?
認証状態が継続する仕組みを考えてみればわかる希ガス。
670:663
07/05/10 16:42:54
考えてもわからないから聞いてるんです。
671:nobodyさん
07/05/10 17:07:43
∧_∧
( ・∀・) | | ガッ
と ) | |
Y /ノ 人
/ ) < >__∧∩
_/し' //. V`Д´)/
(_フ彡 / ←>>670
672:663
07/05/10 18:51:51
ワロタw
>>670
は別人です。まぁ、言っていることはほぼ正しかったと言ってもいいわけですが。
で、結論ですが、トップページで認証するけど認証状態が維持できないのは
<forms name="AppNameCookie" slidingExpiration="true" loginUrl="Login.aspx" timeout="1440"
path="/members" cookieless="UseCookies" />
でパス指定してたからでした。
membersで認証してもページが表示されずloginから抜けられなかったのは
原因が不明ですが、上記 path="/members"を消したとたんに正常に動きはじめました。
パスの設定のあるディレクトリとないディレクトリで認証が継続しないとか、
そんなことのようです。
結局解決に至ったのは>>667で紹介されたとおりに別のソリューションを作って
web.configを編集しながらエラーが出る記述を発見できたおかげです。
ありがとうございました。
673:nobodyさん
07/05/10 21:57:11
membersってパス内にあるわけ?
674:663
07/05/10 22:28:56
>>673
パス内というか、ルート直下のmembersディレクトリにセキュリティを掛けたかったんですが、
ところが、このパラメータは、HTTP cookieのパスを指定するパラメータだったようです。
つまりクライアント側のパスなんですね。orz
確か最初はルートを指定していたのですが、直感的にセキュリティを掛けるディレクトリのパスと
勘違いして記述を変更したみたいです。サンプルはルートにセキュリティを掛けていたので。
で、ルートの認証cookieと別になっちゃったのが原因だったみたいです。
理由がわかるともっともな話ですが、なんせ初心者なので・・・お騒がせいたしました。
675:nobodyさん
07/05/11 01:53:23
C# で作ったDLL内のメソッド呼び出しが分かりません・・・
676:nobodyさん
07/05/11 03:10:43
DLLの関数はパブリックだよな?
DLLの関数を呼び出したいプロジェクトを開いて
プロジェクトを右クリックして参照の追加でDLLを追加
.csファイルを開いてDLLのクラスのインスタンスを作成して
DLL名.インスタンス名.関数名で呼べるよ
DLL名を省略したかったらusing DLL名;を追加してやる。
677:nobodyさん
07/05/11 03:17:54
間違ってるな…
インスタンス化する時に
DLL名.クラス名 nurso = new DLL名.クラス名();
呼び出す時は
nurso.関数名()だわ
678:nobodyさん
07/05/11 18:50:19
WebResource.axdがキャッシュに残るのはいいんだけど
有効期限が設定されてないから、毎回転送するはめになってます。
AJAXの方のScriptResource.axdの方は何もしなくても有効期限が
1年後に設定されてるんですよね。
どなた様かちゃんと有効期限を設定する方法を知りませんか?
679:nobodyさん
07/05/11 21:10:50
>>678
これかな?
Response.Cache.SetExpires (DateTime.Add(DateTime.Now, TimeSpan.FromDays(365));
URLリンク(www.microsoft.com)
680:675
07/05/12 01:59:14
>>676-677
参照の追加さえすれば普通に呼び出しOKなんですね^^
ありがとー
681:nobodyさん
07/05/13 01:02:53
>677
通常はDLL名とnamespaceが同じだからそうなるわけで、
DLL名違うnamespaceにクラスを作ることもできるかと。
682:nobodyさん
07/05/13 04:32:08
スレ違いになるかもしれませんが、質問させてください。
現在、WinXP/VS2005の環境でWebシステムの構築を行っています。
その際、スプレッドシートにGrapecity社のSPREAD for .NETを利用しています。
自分は担当者ではないので、理由はよくわかりませんが、トライアル版を使用しています。
質問内容はこのSPREADに関することなのです。
フィールドに「削除ボタン」と「入力欄」を持つSPREADシートを使用し、
データベースから取得したデータを表示させ、
入力欄を利用して値の変更を行ったり、削除ボタンを押してレコードを削除するようなページがあります。
問題になっているのが、削除を行ったときの動作でして、
DataSetから指定行を削除し、そのDataSetをsessionに登録し、
onloadのタイミングでSessionから取得したDataSetを表示させているのに、
なぜか入力欄に入力した文字が行削除を行っても上に詰められません。
不思議なことに、削除を行った直後(onloadが走る前・Postbackする前)はちゃんと削除されているにもかかわらず、
onloadが走ると直前の画面がそのまま表示されているのです。
これはSPREADの仕様なのでしょうか。または、ASP.NET側で何か起きているのでしょうか。
コーディング自体にはこのような動作を行う処理は入っていません。
もし分かる方が折られましたら、ご教授願えますでしょうか。
683:nobodyさん
07/05/13 09:37:27
どうせPostBack時もDBから読んでましたってオチじゃねーの?
>これはSPREADの仕様なのでしょうか。
どんな仕様だよっ
684:nobodyさん
07/05/13 10:30:14
考えられる理由はセッションに格納するデータセットに削除フラグをたてただけ
むしくは>>683が言ってることか。
685:nobodyさん
07/05/13 20:22:18
PostBack以外でDatabindしちゃってイベント発生しないことあるよね
これ嫌なんだけど、仕様的にはどうしようもないのかなぁ。
686:nobodyさん
07/05/13 20:26:09
×PostBack以外で
○PostBackで
687:nobodyさん
07/05/13 20:27:20 fPqdga/g
タブのようなインタフェースで自作のユーザコントロールを切り替えたいのですが
どのようにすればよいでしょうか?(下記にページイメージ)
ボタン1、ボタン2 <領域を切り替えるためのボタン
------|
| 領域 | <ボタンを押したら切り替えるための領域
------|
領域にMultiViewを使って、その中にViewを宣言し、
動的にコントロールを追加するようにしてもうまくいきませんでした。
コード例:
protected void Button1_Click(object sender, EventArgs e){
MyUserControl c = new MyUserControl();
View1.Controls.Add(c);
MultiView1.ActiveViewIndex = 0;
}
その他にも領域にPlaceHolderを使用してみたりしてもうまくいきませんでした。
コード例:
protected void Button1_Click(object sender, EventArgs e){
MyUserControl c = new MyUserControl();
PlaceHolder1.Controls.Add(c);
}
このように、領域に対してのみ部分更新をしたいのですが(初期化時にロードしたくない)
サーバコントロールを動的にロードするには何を使用するのが適当なのでしょうか?
688:nobodyさん
07/05/13 20:39:33
なんでコントロールを動的に生成する必要があるの?
689:687
07/05/13 21:02:49
一つには領域にロードするコンテンツが多いです。
最初にページをロードするときに通信量を少なくしたいです。
また、切り替えのバリエーションを途中で増やすことなどを考えています。
690:nobodyさん
07/05/13 21:10:30
>>689
情報量という観点からみると、仮にpanel上にコントロールを配置して、
そのpanelのvisibleをfalseにすると、そのpanel上に配置されたコントロールは
htmlとして描画されない=そのコントロールの通信量はゼロとなるけど、
それでは不十分?
691:nobodyさん
07/05/13 22:25:46
レスありがとうございます。
レスポンスを確認したところ、MultiView/Panelともにご指摘のとおり情報量の観点では問題ないようです。
動的に生成するという観点では
MultiView/Panelなどを使った場合、
ウェブデザイナ上で追加しておかなければ表示できないものなのでしょうか?
タブを動的に追加したいです。
(余談ですが、WindowsプログラミングでよくControlを動的に生成していたので、なぜできないのかが直感的にはわからなかった。)
このような疑問を持った背景は
タブの内部だけちらつきなく、部分的に更新したいと思っていて
タブ内領域を一つのサーバコントロールで作成し、
Ajax.NETか何かでサーバコントロールを切り替える方法でもあるのかなと思って「動的」という発想になっています。
(Ajax.NETとか調べ始めたばかりでよくわかっていないのですが・・)
692:nobodyさん
07/05/13 23:38:26
返答ありがとうございます。
レコード削除処理では、削除フラグは用いずDataSetのRemoveを行ってます。
また、DBからの取得も最初に画面が表示されたときのみになっているため、
再度DataBindをしているとは考えにくいです・・。
少し説明ベタなので、伝わりにくいかもしれないですが、実際の処理の流れを簡潔にかいて見ます。
1.画面を表示。SessionがないためDBからデータを取得。DataSetをSessionに登録し、Session情報をSPREADに表示。Ajax利用。
2.入力欄にデータを入力。セルを移動するタイミングでSPREADの情報をSessionに登録。
3.削除ボタンクリック。SPREADの入力欄を一度消去。ここまではJavaScript。
4.SessionからDataSetを取得し、指定行をRemove。指定行を削除したDataSetをSessionに登録。Ajaxで処理。
5.autoPostBackで画面を再表示。SessionがあるためSessionからDataSetを取得、SPREADに表示。
とりあえず原因がわからないため、Onload時に強引にSPREADの情報を書き換えてみることで対処してみる予定です。
693:nobodyさん
07/05/14 01:09:05
>>691
サーバが作成したhtmlをクライアントのブラウザが表示するという形態
であるので、基本的に視覚の状態がいろいろ変化する可能性のある
VisialComponentってのはwebアプリは苦手。
そしてasp.netはpostback以前とpostback後のインスタンスは別々で、
それぞれのaspxの内部のあるオブジェクトはまったく別物であるので、
更新された状態を継続して維持し続けることが難しい。
(↑これをある程度わかりやすく可能にしたのがViewState)
なので、タブを切り替えるというイメージなら、webアプリなら、
それだけでも別ページにしてもいいぐらいな感じだと思う。
そしてこんとロールについては、自分なら、ある程度、固定された
表示パターンしかなければ、Panel等に配置しておいてPanelのvisibleの
オンオフで対応すると思う。
694:nobodyさん
07/05/14 01:19:32
>>692
>5.autoPostBackで画面を再表示。SessionがあるためSessionからDataSetを取得、SPREADに表示。
ポストバック時にセッションに保存したDataSetをSPREADとやらにDataBindしてるんでしょ?
なんで表示時にしかDataBindしかしてないって言い切れてるのかよくわからん。
まぁSPREADとやらが何だかわかんないけど。
695:nobodyさん
07/05/14 02:40:59
>>692
postback時にFpSpreadのSaveChangesメソッドを実行してる?
696:nobodyさん
07/05/14 09:10:54 e3vnemfr
>>695
いえ、そのようなメソッドはコールしていないです・・・。
するべきなのですか?
697:nobodyさん
07/05/14 12:17:44
連レス失礼します。
SaveChangesメソッドをPostBack時にコールすると、期待した動作をしてくれました。
お騒がせしてすいませんでした。
698:nobodyさん
07/05/14 12:21:04 GE+YMe54
AjaxControlToolkitについて質問です。
AjaxControlToolkitを勉強していて、SampleWebSiteを触っているのですが
各AjaxControlToolkitを使っているaspxをみると中で定義されているScriptManagerが
ことごとくコントロールの作成エラーとなってしまいます。
(コンパイルして動かすことはできるのですが・・)
各AjaxControlToolkitのサンプルページ内でエラーを出さずにする方法はどのようにすればよいのでしょうか?
試したこと
各コントロールAnimation.aspxなどを開いてソースを見るとasp:ScriptManagerが解決できてないように見えます。
Web.configを確認したところタグプレフィックスなどの設定は問題がなく、
新しくWebフォームを追加してその中ではasp:ScriptManagerタグを使うことはできました。
(MasterPage内で使うとWeb.configがうまく動かないとか制約でもあるのでしょうか・・)
699:nobodyさん
07/05/14 15:34:14
GridView内のコントロールについて質問です。
GridView内のTemplateFieldにDropDownListを配置したのですが、
ページを読込む際に値を読込んでくれません。
GridViewの外にもDropDownListはあるのですが、それはちゃんと見れます。
出来ればそれと同じ項目をGridView内のDropDownListにも反映させたいのですが、
どうすればいいでしょうか?
700:687
07/05/14 16:17:07
だれか俺のアナルに指をいれてくだし
701:nobodyさん
07/05/14 16:30:03 uOuXEmoB
URLクエリを参照しようとして、パラメーターが存在しなかった場合中身はNULLに
なりますか?
たとえば、
Request["Test"];と参照した場合に"Test"が存在しなかったらRequest["Test"];は
NULLを表すのでしょうか。
702:nobodyさん
07/05/14 16:37:41
>>701
自己解決しました。
703:nobodyさん
07/05/14 16:39:35 uOuXEmoB
>>702
704:nobodyさん
07/05/14 16:43:53
試してから書けよっw
705:697
07/05/14 17:02:35
すいません自己解決しました。
706:nobodyさん
07/05/14 17:22:38
試してから書けよっw
あれ?
707:nobodyさん
07/05/14 21:44:56
>698
確かMasterPageにScriptManagerを配置した場合は、そのMasterPageを使用したaspxでは
ScriptManagerProxyを使わないといけないはず。
708:707
07/05/14 21:48:07
ああSampleWebSiteってあるから自分で作成したページじゃないのかな。
じゃー関係ないかも。
709:nobodyさん
07/05/15 01:51:25
>>700
だからタブごとに別ページにしなさい。
んで、動的に生成するコントロールはコントロールのvisibleのtrue,falseで対応しなさい。
710:nobodyさん
07/05/15 11:02:56
>>709
おまえの指うんこくせえぞ
711:nobodyさん
07/05/17 02:26:12
webページのボタン押下時に、別のWAN内のサーバの共有ディレクトリからファイル読み込んで
その結果を表示したいが、可能かな?クライアントは2000くらいなんだけど
712:nobodyさん
07/05/17 03:20:30
アクセス権さえ設定してればいけるんじゃね?と確かめもせず
レスしてみる
713:nobodyさん
07/05/17 07:26:12 FTfyfp31
自作したサーバコントロールのタグプレフィックスの定義に関する質問です。
Webサイトプロジェクト内にサーバコントロールを定義して、同一プロジェクト内で使用する場合
毎回タグプレフィックスが定義されるのが面倒なのでweb.configにタグプレフィックスを定義したいです。
<@Register ...
<cc1:MyUserControl>
<cc2:MyUserControl2>
と自動的に宣言されるのが汚い。
web.config内にサーバコントロールのタグプレフィックスを定義する場合
assembty属性とnamespace属性とtagPrefix属性を指定するようなのですが (<page><control>要素の配下に)
Webサイト内のApp_Codeで定義しているため、assembly属性に何を入れてよいのかわかりませんでした。
どのように定義すればよいのでしょうか?
assembtyを""にしてもダメでした。
もしかして、別プロジェクトにしないとダメなのでしょうか?
714:nobodyさん
07/05/22 11:28:30
>>710
すみません、自己開穴しました。
アッ-!
715:nobodyさん
07/05/22 13:05:49 x4pNUm3u
ASP.NET2.0でWebサイト作ってます。
App_Codeディレクトリの参照設定について質問があります。
web.configに以下のようなApp_Code内へサブディレクトリを使用する旨の
記述をしているのですが、imports指定しても、「定義されていません」
とか、言われたりするのです。(それもクラスファイルによってできたり
できなかったりする) アクセス就職し云々でなく、基本的にファイルがない
ということになっているようなのですが、同様の現象にあったことがあるかたは
おられますでしょうか? 昨日から原因不明でビルドできず我慢の限界に達しました。
サブディレクトリ名とnamespaceは一致させる必要はありませんよね??
<codeSubDirectories>
<add directoryName="utils"/>
<add directoryName="database"/>
<add directoryName="auth"/>
<add directoryName="information"/>
<add directoryName="consts"/>
</codeSubDirectories>
716:715
07/05/23 08:17:38
自己解決しました。
717:nobodyさん
07/05/29 03:07:54
(; ^ω^)
718:nobodyさん
07/05/29 10:24:53
テキストボックスとボタンを適当に置き、
テキストボックスにタグ(またはタグの1部、?)等を入力してボタンを押すと、
System.Web.HttpRequestValidationException:
危険な可能性のある Request.Form 値がクライアント (TextBox1="<ta") から検出されました。
というページが表示されるのですが、ワケがありましてどうしても、
validateRequest=false
するわけにはいかず、具体的にどう入力するとこの警告がだされるのかを
調べなくてはならなくなったのですが、情報がみつかりません。
どなたかお力添えをお願いいたします。m(_ _)m
719:nobodyさん
07/05/29 13:26:26
単純に'<'と'>'で囲まれたタグ形式のものがエラーになるんじゃなかったけ?
俺ミスリードしてる??
720:nobodyさん
07/05/29 14:46:22
>>719
ありがとうございます。それが、
&# (←半角で)
とか、<>の左側
<
に+アルファベット1文字とか、
ちゃんとあるタグに限らないんです・・・
チェックリストはハードコーディングして隠されてるみたいなんです。
721:nobodyさん
07/05/29 22:34:10
ちゃんとあるタグってhtmlに存在するタグってこと?
それならたぶんエラーにひっかかってるのはhtmlタグじゃなく
XMLのタグあたりじゃないか?
俺はそういうものなんだと思ってたけど…
誰か詳しい人解説きぼん
722:nobodyさん
07/05/30 00:36:44
自分なら「validateRequest=false」とは無関係に
まず正常系の処理として要求を満たす入力可能な文字集合の作成を検討する。
設計者ならば要求を満たす機能を考えることが求められるし
開発者ならば要求を満たす機能を提案し説得することが求められる。
なにより共通して言えるのはエンドユーザの要求を汲み取ることが求められる。
ということでブラックリストを列挙するのではなく
ホワイトリストを作成するのが普通な気がしない?
異常系の仕様は予算に応じてピンキリでいくらでも考えられるだろうし・・・
それこそHttpRequestValidationException発生時に別ページに飛ばすだけの手抜きまで。
それでもあえて回答を考えてみると,
「"具体的にどう入力するとこの警告がだされるのか"は非公開です。」
となる。
「validateRequest=falseは出来ない」とか「調べなくいけなくなった」とか
書いてる時点でこんな回答無意味かも知れない。
723:nobodyさん
07/05/30 11:20:03
postbackした後に任意の<a name>タグに位置を合わせたいんだけどどうしたら良いでしょうか?
redirectでResponce.redirect("moyasi.aspx#kani")だと初期状態に戻ってしまうしどうしていいかわかりません(><)
724:nobodyさん
07/05/30 15:51:02
とりあえず自己解決。
PageのPredrenderでRegisterStartupScript使ってjavascript書きました。
もうちょっと美しい方法ありそうだけどなぁ…
725:nobodyさん
07/05/31 00:12:46
.NET になってから、Response.Flush()はどういった場面で使うの?
726:nobodyさん
07/06/05 11:47:32 5EDNjM+0
質問です。
環境:VS2005、C#+SQL2005
複数人が更新するWebアプリで楽観的ロックを使用してDBにレコードをインサートする際
あるカラムA(IDのような一意のint型のカラム)に重複した値が入るのを避けるにはどうすれば良いのでしょうか?
SQL権限の関係で主キーは設定出来ずSQLで自動で値をふる機能も使えません。
現状は
①DBからカラムAの最大値を取得して1を足す
②①で取得した値をインサート文のvalueに入れてインサート文を実行
という流れを一つのトランザクションで行っていますが、複数の端末から同時に上記①②の処理が
実行された時、カラムAの値が重複する場合があります。
解決策として
1)①の開始直前からインサートが終わるまでテーブルをロック
2)①の処理で取得した値を変数に入れておきインサート実行の直前に重複のチェック
の二つを考えているのですがどちらも決めてに欠けています…
1)はパフォーマンスの低下は確実、2)は根本的解決になっていない。
これ以外の重複を避ける方法というのはないでしょうか?
それとも重複を諦めるかパフォーマンスを諦めるかの二択になるんでしょうか?
727:nobodyさん
07/06/05 19:04:57
>726
unique制約もだめなん?
別トランザクションでユニーク値を管理するテーブルを用意して
そっちから値を引っ張ってくるってのはだめ?
(うちの周りでは自動採番テーブルとか呼ぶね)
728:nobodyさん
07/06/05 22:31:06
>>726
ACCESS_LOG
[LOG_ID] int NOT NULL,
[LOG_DATE] datetime NOT NULL,
[IP_ADDRESS] nvarchar(50) NOT NULL,
[USER_AGENT] nvarchar(100) NOT NULL
って感じのレコードとして
INSERT INTO ACCESS_LOG
SELECT MAX(LOG_ID) + 1, GetDate(), '127.0.0.1', 'FireFox'
FROM ACCESS_LOG
とかじゃだめなん?
ちゃんとうまくいくかはWCATとかでストレステストとかしてみてね。
729:nobodyさん
07/06/06 11:34:51
Webアプリを配置したら、エラーが出ました。
App_Code
に配置したソースコードで
Compiler Error Message: BC30560: 'RegExUrlMappingBaseModule' is ambiguous in the namespace 'RegExUrlMapping_HTTPModule'.
というエラーです。名前空間があいまいということらしいですが・・・・公開環境ではUS版の2003server web を使ってます。
ベースクラス
Namespace RegExUrlMapping_HTTPModule
Public Class RegExUrlMappingBaseModule
Implements System.Web.IHttpModule
/////
継承クラス
Namespace RegExUrlMapping_HTTPModule
Public Class RegExUrlMappingModule
Inherits RegExUrlMappingBaseModule
RegExUrlMapping_HTTPModule.RegExUrlMappingBaseModule
と、装飾して宣言してもまったく同じエラーが出ました。
web.configは開発環境からコピーしたものを使ってます。
machine.configが違うのでしょうか?
ヒントだけでもお願いします。
730:729
07/06/06 11:39:34
あ、ソースはこれです。
URLリンク(pietschsoft.com)
URL書き換えを正規表現できるってことでトライしてますがいろいろつまづいて
以前にもここで質問してます・・・おかげさまで開発環境ではちゃんと動くようになったのですが。。。
すみません。よろしくお願いします。
731:729
07/06/06 14:33:45
事故解決。
どうにも次々に問題が発生するので思い切って削除しました。
732:nobodyさん
07/06/06 19:41:27 bb3nk3cA
ご意見聞かせて下さい。
環境VS2005、VB
ブラウザの左側にtreeviewを使用したメニュー、右側の領域にコンテンツ
というページ構成を実現させたいのですが、
メニューをクリックした時に、右のメニューを描画せずに左側の領域だけ
画面を切り替えるのは実現可能でしょうか?
MasterPageを使用していますが、メニューも描画されてしまいます。
フレームは使用しない方向で。
733:707
07/06/06 21:28:38
>732
Flashを使う。
734:707
07/06/06 21:46:17
あ、TreeViewを使うのか。じゃあフレームを使う以外には無いよ。
Webアプリとはそういうものです。
735:どとねと
07/06/06 22:40:48 WXe4cmTf
質問です。MSのホームページを見るとASP.netを動かす為の
用件として
・WindowsXP(Professional)
・IIS
が必須条件らしいのですが、私のマシンはWindowsXP(Home)にも
関わらず、VS2005をインストールしたところIISがインストールさ
れていないにも関わらずDebug実行する事が出来ます。
そしてファーストサーバにアップロードしたところ通常通り
プログラム(C#)を動かす事が出来ています。
以上を踏まえるとVS2005をインストールすればWindowsXP(Home)
でもASP.net開発はする事が出来るという事で良いのでしょうか?
736:どとねと
07/06/06 22:49:18 WXe4cmTf
あと、一つ質問があります。
上記にあげた私の環境でもプログラミングをした上で
ファーストサーバにアップロードして動作させる事が出来た
のですが、DBと連動させたシステムを作りたいと思って
います。
そこで、ローカルで開発をする際にはDBにAccessを使用して
ASP.netシステムを開発し、外部にASP.netシステムを
(ファーストサーバを利用して)公開する際には、
DB接続文字列(SQL Server用に)さへ変えてしまえば、
Accessで開発したASP.netシステムをファーストサーバ上で
動かす事は出来るのでしょうか?
737:nobodyさん
07/06/06 22:59:24
>>732
まずメニューをどっちに置きたいのかはっきりしてもらおうか
738:nobodyさん
07/06/06 23:01:19
微妙なSQLの構文の違いとかパラメータクエリの扱いの違いとか食らう可能性があることを思うと
最初からSQLServerで作った方がいいと思うよ。
739:nobodyさん
07/06/06 23:01:24
>>736
素直にSQL Server Express Editionでやっとけ。
740:nobodyさん
07/06/06 23:02:49
VS2005入れると開発Webサーバが入るからそれが動いてる。
多少違いはあるが、まあ普通に開発する分にはまずまず問題ない。
741:どとねと
07/06/06 23:11:29 WXe4cmTf
>>738
本当は、私もSQL ServerでやりたいのですがHomeEditionなので
インストール自体が出来ないのでAccessを使っています。。。
>>739
もしかしてHomeにもインストールする事が出来るのですか?
ちょとぐぐって調べてみます。
>>740
ありがとうございます。疑問が解決しました。
742:どとねと
07/06/06 23:14:52 WXe4cmTf
どうやら、Windows 2000 Sererが必要な様ですね。。。
何とか自宅でASP.netシステムを構築出来る環境を
整えたいのですが無理でしょうか。
743:nobodyさん
07/06/06 23:15:47
っつかVS入れたらSSEEも入ってるだろ、あえてはずさない限り。
744:nobodyさん
07/06/06 23:17:19
URLリンク(www.microsoft.com)
よくみろ
745:どとねと
07/06/06 23:24:48 WXe4cmTf
>>743
申し訳ありませんが、SSEEとは何の略でしょうか?
ぐぐってみたら
「Ship's Signals Exploitation Equipment (SSEE) 」
がトップに出てました。SQL Server関係だとは思うのですが。
もっと色々とのぞいてみます。
>>744
WindowsXP(Home)SP2も大丈夫みたいですね^^;
即効インストールしてみます。
746:nobodyさん
07/06/06 23:27:43
sqlサーバーexpressエディションの頭文字でSSEE
747:nobodyさん
07/06/06 23:31:29
>申し訳ありませんが、SSEEとは何の略でしょうか?
悪かったよ。
SQL Server Express Edition の話してたからまあ分かると思ったんだ。
で、さっきも書いたがVS2005と一緒に入るはずだから、あえて外してなかったら
すでに入ってると思うぞ。
748:nobodyさん
07/06/06 23:33:11
FormViewのなかの、radiobuttomListの値が取得できないんだが、なんとかなりませんか
(コントロール).row.FindControl("ラディオボタン")で出来ません
よろよろ
749:どとねと
07/06/06 23:46:01 WXe4cmTf
>>746,747
プログラムの追加と削除を除いてみたところ
Microsoft SQL Server 2005
`` Mobile[ENU]Developer Tools
`` Native Client
`` Setup Support Files(English)
`` VSS Writer
は入っていたのですがSSEEはどうやら入っていない様です。
ダウンロードしてインストールを行う事にします。
750:nobodyさん
07/06/07 00:37:23
アプリケーションのルートのURL(wwwrootまで)を取得したいのですが
なにか方法はありませんか?
751:nobodyさん
07/06/07 01:47:06
意味が分かりません><
752:nobodyさん
07/06/07 02:09:35 7+sk1quV
>>734
そうですか。ありがとうございます。
>>737
メニューは左です。
753:nobodyさん
07/06/07 03:05:24
server.MapPathは?
754:nobodyさん
07/06/07 06:20:53
>>749
それで入ってる。
「Express Edition」は表示されない。
755:nobodyさん
07/06/07 13:13:21 xS5ryPrS
SQLDB2005と接続して値を返す関数をC#Webサービスで作成したんだけど質問です
WebサービスからSQL認証で接続するにはSQL接続文字列をWeb.configに
残しておかないとダメなんでしょうか?
なんか見た目に不安なんですが…
756:nobodyさん
07/06/07 15:51:26
暗号化すれば?
757:749
07/06/07 22:09:13 bW0yuySj
みなさんのお陰でFirstServerにASP.netシステムをアップロード
しDB連動したアプリを動かす事が出来ました。
ありがとう!!!ございます^^;
758:nobodyさん
07/06/08 02:31:37
>>755
Windows認証は使えないの?
759:nobodyさん
07/06/08 02:42:37
>>756
暗号化が一番使い慣れてるのでその方法にしようかと思います
>>758
今までWindows認証を使った実績が無い為、候補から外してました…
その辺の処理をどうするか分からないのと納期との兼ね合いで
スルーしていた次第です
外部に公開するwebサービスでWindows認証を行なう場合
認証に使われるアカウントはWebサービスを公開しているサーバの
アカウントになるんでしょうか?