1 名前:nobodyさん [2006/10/09(月) 10:04:09 ID:luJDzNn3] ●過去ログ Part1 - 【質問】 ASP.NETスレ 【議論】 pc5.2ch.net/php/kako/1040/10406/1040698263.html 【質問】ASP.NETスレ Part2【議論】 pc8.2ch.net/test/read.cgi/php/1111480331/
645 名前:nobodyさん mailto:sage [2007/05/08(火) 23:06:48 ID:???] >>644 ヒント: Graphics.SmoothingMode
646 名前:nobodyさん [2007/05/09(水) 14:53:51 ID:189NeqEf] .aspxで参照設定したDLLから同一ディレクトリ内の別のサブディレクトリにある XMLファイルのパスの取得は出来ないんでしょうか? wwwroot └hoge ├a.aspx └ hoge2 └b.xml←このファイルのパス DLLではserver.Mappathは使えないですしa.aspxから引数として ファイルパスを渡すのも仕様上NGで絶対パスをベタ書きするのもNGです とにかくxmlファイルの内容をa.aspxで参照しているDLLから取得出来れば良いのですが…
647 名前:646 mailto:sage [2007/05/09(水) 14:56:50 ID:???] すいません、なんか質問内容がブレてますね… したい事はxmlファイルの内容をDLLから取得です。 相対パスはその為の手段として思い付いた事っす。
648 名前:nobodyさん mailto:sage [2007/05/09(水) 16:08:06 ID:???] >>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 mailto:sage [2007/05/09(水) 16:48:09 ID:???] >>648 ありがとうございます。 web.configファイルの存在を忘れてました… 試してみます。 ちなみに…GW明けで修正案件4件以上入ってきたのでマジでしねそうです…
650 名前:646 mailto:sage [2007/05/09(水) 18:18:52 ID:???] >648の方法を試してみたのですが >xmlDoc.Load(foo); の部分でファイルパスが絶対パスに変更されwin32\\system\\...のような形に なってしまいアクセスしたいファイル意外のパスを参照してエラーがででしまいます。 むぅ…DLLのコード内でWebアプリのパスだよと指定する方法があるのでしょうか?
651 名前:nobodyさん mailto:sage [2007/05/09(水) 18:36:40 ID:???] >>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さん mailto:sage [2007/05/09(水) 18:38:31 ID:???] だめだね。 キャストがむちゃくちゃ。 しね>>651
653 名前:nobodyさん mailto:sage [2007/05/09(水) 18:43:12 ID:???] >>652 うるせーはげ よし。わかtった。 651をちょっと変更しる。 -----------default.aspx.cs------------- protected void Page_Load(object sender, EventArgs e) { ... xxx.yyy.trymefunc(ApplicationInstance;); ... } korede ikeru hazu
654 名前:nobodyさん mailto:sage [2007/05/09(水) 18:47:30 ID:???] おっと、セミコロンがちょっと多すぎたぜ
655 名前:646 mailto:sage [2007/05/09(水) 18:59:51 ID:???] レス本当にありがとうございます。 そちらも試してみたいと思います。 納期が厳しいので最悪のケースはDLLにグローバル変数pathを追加して セットアクセサでa.aspx.csからpathに値をsetするような形になりそうというか この方が楽なんですがこちらを選んだら負けのような希ガス
656 名前:nobodyさん mailto:sage [2007/05/09(水) 19:49:11 ID:???] >>655 System.IO.Path.GetFullPath は使えないかい?
657 名前:nobodyさん mailto:sage [2007/05/09(水) 21:31:20 ID:???] >>646 つ www.abc.fscs.jp/2ch/default.aspx こんなんでどう?
658 名前:nobodyさん mailto:sage [2007/05/09(水) 21:47:21 ID:???] なんでぇ、ServerMapPathつかえるじゃん。
659 名前:639 mailto:sage [2007/05/09(水) 22:13:34 ID:???] しんじまえ
660 名前:nobodyさん mailto:sage [2007/05/10(木) 00:21:02 ID:???] >DLLではserver.Mappathは使えないですし 使えるよ。
661 名前:646 mailto:sage [2007/05/10(木) 03:06:43 ID:???] まさかこんなにレスが貰えるとは。 本当に感謝です@デスマーチ中 >656 GetFullPathはwin32\system\...だったか求めているパスが返ってこなかったです。 >658,660 DLLからserver.Mappathを使う為のヒントをいただけないでしょうか? 昼間ググったりリファレンスを読んだ限りは見つけられなかったもので…
662 名前:nobodyさん mailto:sage [2007/05/10(木) 10:11:51 ID:???] >>661 657のリンク
663 名前:nobodyさん mailto:sage [2007/05/10(木) 11:00:41 ID:???] 初心者すぎてわけのわからない現象で悩んでます。 自前のSQLサーバーでユーザー管理をすべく www.microsoft.com/japan/msdn/enterprise/pag/securityguidance/paght000022.aspx などを参考に設定をしてみました。テーブルは自動的に作成されました。 で、トップページに貼り付けたLoginコントロールではSQLサーバーに 要求が届き、名前とパスワードが正しい場合エラーメッセージは出ません。 がトップページに貼り付けたUserNameコントロールにはユーザー名が出ません。 Login状態が保持されてないみたいです。 この状態でセキュリティ設定されたディレクトリへ移動するとLoginページに リダイレクトされてしまいます。 で、LoginページのLoginコントロールにユーザー名パスワードを入力すると 「ログインに失敗しました」と表示されますが、このときSQLサーバーには なんの要求も来ていません。 Loginコントロールはどちらもドラッグして置いただけです。 CreateUserWizerdではユーザーの登録ができます。 何度か削除したり置き直したりしても変わりませんし、トレースしようにも コードがないのでトレースできません。 あとはどこをチェックすべきでしょうか?
664 名前:663 mailto:sage [2007/05/10(木) 11:02:01 ID:???] 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 mailto:sage [2007/05/10(木) 11:03:03 ID:???] … <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さん mailto:sage [2007/05/10(木) 11:08:17 ID:???] >>664 先にこっちやってごらん。 msdnのサンプルはよくわからんことが多い。 www.atmarkit.co.jp/fdotnet/asp2review/asp2review03/asp2review03_01.html
667 名前:nobodyさん mailto:sage [2007/05/10(木) 11:12:58 ID:???] あとここらへんとか。 www.atmarkit.co.jp/fdotnet/dotnettips/450aspsecurelogin1/aspsecurelogin1.html こういう関係の仕組みは使えそうだけど、結局、自分好みや顧客の要求に応えられる 拡張ができなくて自作になることが多いので、深く知る必要はない気がするが勉強にはなるかも。
668 名前:663 mailto:sage [2007/05/10(木) 15:52:24 ID:???] >>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さん mailto:sage [2007/05/10(木) 16:20:28 ID:???] >>668 アンチウィルスとか、なんたらゲートウェイとか、 ブラウザのなんちゃらとかで、クッキーとか自動的に削除したりしてない? 認証状態が継続する仕組みを考えてみればわかる希ガス。
670 名前:663 mailto:sage [2007/05/10(木) 16:42:54 ID:???] 考えてもわからないから聞いてるんです。
671 名前:nobodyさん mailto:sage [2007/05/10(木) 17:07:43 ID:???] ∧_∧ ( ・∀・) | | ガッ と ) | | Y /ノ 人 / ) < >__∧∩ _/し' //. V`Д´)/ (_フ彡 / ←>>670
672 名前:663 mailto:sage [2007/05/10(木) 18:51:51 ID:???] ワロタ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さん mailto:sage [2007/05/10(木) 21:57:11 ID:???] membersってパス内にあるわけ?
674 名前:663 mailto:sage [2007/05/10(木) 22:28:56 ID:???] >>673 パス内というか、ルート直下のmembersディレクトリにセキュリティを掛けたかったんですが、 ところが、このパラメータは、HTTP cookieのパスを指定するパラメータだったようです。 つまりクライアント側のパスなんですね。orz 確か最初はルートを指定していたのですが、直感的にセキュリティを掛けるディレクトリのパスと 勘違いして記述を変更したみたいです。サンプルはルートにセキュリティを掛けていたので。 で、ルートの認証cookieと別になっちゃったのが原因だったみたいです。 理由がわかるともっともな話ですが、なんせ初心者なので・・・お騒がせいたしました。
675 名前:nobodyさん mailto:sage [2007/05/11(金) 01:53:23 ID:???] C# で作ったDLL内のメソッド呼び出しが分かりません・・・
676 名前:nobodyさん mailto:sage [2007/05/11(金) 03:10:43 ID:???] DLLの関数はパブリックだよな? DLLの関数を呼び出したいプロジェクトを開いて プロジェクトを右クリックして参照の追加でDLLを追加 .csファイルを開いてDLLのクラスのインスタンスを作成して DLL名.インスタンス名.関数名で呼べるよ DLL名を省略したかったらusing DLL名;を追加してやる。
677 名前:nobodyさん mailto:sage [2007/05/11(金) 03:17:54 ID:???] 間違ってるな… インスタンス化する時に DLL名.クラス名 nurso = new DLL名.クラス名(); 呼び出す時は nurso.関数名()だわ
678 名前:nobodyさん mailto:sage [2007/05/11(金) 18:50:19 ID:???] WebResource.axdがキャッシュに残るのはいいんだけど 有効期限が設定されてないから、毎回転送するはめになってます。 AJAXの方のScriptResource.axdの方は何もしなくても有効期限が 1年後に設定されてるんですよね。 どなた様かちゃんと有効期限を設定する方法を知りませんか?
679 名前:nobodyさん mailto:sage [2007/05/11(金) 21:10:50 ID:???] >>678 これかな? Response.Cache.SetExpires (DateTime.Add(DateTime.Now, TimeSpan.FromDays(365)); www.microsoft.com/japan/msdn/vs05/aspnet/webresource.aspx
680 名前:675 mailto:sage [2007/05/12(土) 01:59:14 ID:???] >>676-677 参照の追加さえすれば普通に呼び出しOKなんですね^^ ありがとー
681 名前:nobodyさん mailto:sage [2007/05/13(日) 01:02:53 ID:???] >677 通常はDLL名とnamespaceが同じだからそうなるわけで、 DLL名違うnamespaceにクラスを作ることもできるかと。
682 名前:nobodyさん mailto:sage [2007/05/13(日) 04:32:08 ID:???] スレ違いになるかもしれませんが、質問させてください。 現在、WinXP/VS2005の環境でWebシステムの構築を行っています。 その際、スプレッドシートにGrapecity社のSPREAD for .NETを利用しています。 自分は担当者ではないので、理由はよくわかりませんが、トライアル版を使用しています。 質問内容はこのSPREADに関することなのです。 フィールドに「削除ボタン」と「入力欄」を持つSPREADシートを使用し、 データベースから取得したデータを表示させ、 入力欄を利用して値の変更を行ったり、削除ボタンを押してレコードを削除するようなページがあります。 問題になっているのが、削除を行ったときの動作でして、 DataSetから指定行を削除し、そのDataSetをsessionに登録し、 onloadのタイミングでSessionから取得したDataSetを表示させているのに、 なぜか入力欄に入力した文字が行削除を行っても上に詰められません。 不思議なことに、削除を行った直後(onloadが走る前・Postbackする前)はちゃんと削除されているにもかかわらず、 onloadが走ると直前の画面がそのまま表示されているのです。 これはSPREADの仕様なのでしょうか。または、ASP.NET側で何か起きているのでしょうか。 コーディング自体にはこのような動作を行う処理は入っていません。 もし分かる方が折られましたら、ご教授願えますでしょうか。
683 名前:nobodyさん mailto:sage [2007/05/13(日) 09:37:27 ID:???] どうせPostBack時もDBから読んでましたってオチじゃねーの? >これはSPREADの仕様なのでしょうか。 どんな仕様だよっ
684 名前:nobodyさん mailto:sage [2007/05/13(日) 10:30:14 ID:???] 考えられる理由はセッションに格納するデータセットに削除フラグをたてただけ むしくは>>683 が言ってることか。
685 名前:nobodyさん mailto:sage [2007/05/13(日) 20:22:18 ID:???] PostBack以外でDatabindしちゃってイベント発生しないことあるよね これ嫌なんだけど、仕様的にはどうしようもないのかなぁ。
686 名前:nobodyさん mailto:sage [2007/05/13(日) 20:26:09 ID:???] ×PostBack以外で ○PostBackで
687 名前:nobodyさん [2007/05/13(日) 20:27:20 ID: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さん mailto:sage [2007/05/13(日) 20:39:33 ID:???] なんでコントロールを動的に生成する必要があるの?
689 名前:687 mailto:sage [2007/05/13(日) 21:02:49 ID:???] 一つには領域にロードするコンテンツが多いです。 最初にページをロードするときに通信量を少なくしたいです。 また、切り替えのバリエーションを途中で増やすことなどを考えています。
690 名前:nobodyさん mailto:sage [2007/05/13(日) 21:10:30 ID:???] >>689 情報量という観点からみると、仮にpanel上にコントロールを配置して、 そのpanelのvisibleをfalseにすると、そのpanel上に配置されたコントロールは htmlとして描画されない=そのコントロールの通信量はゼロとなるけど、 それでは不十分?
691 名前:nobodyさん mailto:sage [2007/05/13(日) 22:25:46 ID:???] レスありがとうございます。 レスポンスを確認したところ、MultiView/Panelともにご指摘のとおり情報量の観点では問題ないようです。 動的に生成するという観点では MultiView/Panelなどを使った場合、 ウェブデザイナ上で追加しておかなければ表示できないものなのでしょうか? タブを動的に追加したいです。 (余談ですが、WindowsプログラミングでよくControlを動的に生成していたので、なぜできないのかが直感的にはわからなかった。) このような疑問を持った背景は タブの内部だけちらつきなく、部分的に更新したいと思っていて タブ内領域を一つのサーバコントロールで作成し、 Ajax.NETか何かでサーバコントロールを切り替える方法でもあるのかなと思って「動的」という発想になっています。 (Ajax.NETとか調べ始めたばかりでよくわかっていないのですが・・)
692 名前:nobodyさん mailto:sage [2007/05/13(日) 23:38:26 ID:???] 返答ありがとうございます。 レコード削除処理では、削除フラグは用いず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さん mailto:sage [2007/05/14(月) 01:09:05 ID:???] >>691 サーバが作成したhtmlをクライアントのブラウザが表示するという形態 であるので、基本的に視覚の状態がいろいろ変化する可能性のある VisialComponentってのはwebアプリは苦手。 そしてasp.netはpostback以前とpostback後のインスタンスは別々で、 それぞれのaspxの内部のあるオブジェクトはまったく別物であるので、 更新された状態を継続して維持し続けることが難しい。 (↑これをある程度わかりやすく可能にしたのがViewState) なので、タブを切り替えるというイメージなら、webアプリなら、 それだけでも別ページにしてもいいぐらいな感じだと思う。 そしてこんとロールについては、自分なら、ある程度、固定された 表示パターンしかなければ、Panel等に配置しておいてPanelのvisibleの オンオフで対応すると思う。
694 名前:nobodyさん mailto:sage [2007/05/14(月) 01:19:32 ID:???] >>692 >5.autoPostBackで画面を再表示。SessionがあるためSessionからDataSetを取得、SPREADに表示。 ポストバック時にセッションに保存したDataSetをSPREADとやらにDataBindしてるんでしょ? なんで表示時にしかDataBindしかしてないって言い切れてるのかよくわからん。 まぁSPREADとやらが何だかわかんないけど。
695 名前:nobodyさん mailto:sage [2007/05/14(月) 02:40:59 ID:???] >>692 postback時にFpSpreadのSaveChangesメソッドを実行してる?
696 名前:nobodyさん [2007/05/14(月) 09:10:54 ID:e3vnemfr] >>695 いえ、そのようなメソッドはコールしていないです・・・。 するべきなのですか?
697 名前:nobodyさん mailto:sage [2007/05/14(月) 12:17:44 ID:???] 連レス失礼します。 SaveChangesメソッドをPostBack時にコールすると、期待した動作をしてくれました。 お騒がせしてすいませんでした。
698 名前:nobodyさん [2007/05/14(月) 12:21:04 ID:GE+YMe54] AjaxControlToolkitについて質問です。 AjaxControlToolkitを勉強していて、SampleWebSiteを触っているのですが 各AjaxControlToolkitを使っているaspxをみると中で定義されているScriptManagerが ことごとくコントロールの作成エラーとなってしまいます。 (コンパイルして動かすことはできるのですが・・) 各AjaxControlToolkitのサンプルページ内でエラーを出さずにする方法はどのようにすればよいのでしょうか? 試したこと 各コントロールAnimation.aspxなどを開いてソースを見るとasp:ScriptManagerが解決できてないように見えます。 Web.configを確認したところタグプレフィックスなどの設定は問題がなく、 新しくWebフォームを追加してその中ではasp:ScriptManagerタグを使うことはできました。 (MasterPage内で使うとWeb.configがうまく動かないとか制約でもあるのでしょうか・・)
699 名前:nobodyさん mailto:sage [2007/05/14(月) 15:34:14 ID:???] GridView内のコントロールについて質問です。 GridView内のTemplateFieldにDropDownListを配置したのですが、 ページを読込む際に値を読込んでくれません。 GridViewの外にもDropDownListはあるのですが、それはちゃんと見れます。 出来ればそれと同じ項目をGridView内のDropDownListにも反映させたいのですが、 どうすればいいでしょうか?
700 名前:687 mailto:sage [2007/05/14(月) 16:17:07 ID:???] だれか俺のアナルに指をいれてくだし
701 名前:nobodyさん [2007/05/14(月) 16:30:03 ID:uOuXEmoB] URLクエリを参照しようとして、パラメーターが存在しなかった場合中身はNULLに なりますか? たとえば、 Request["Test"];と参照した場合に"Test"が存在しなかったらRequest["Test"];は NULLを表すのでしょうか。
702 名前:nobodyさん mailto:sage [2007/05/14(月) 16:37:41 ID:???] >>701 自己解決しました。
703 名前:nobodyさん [2007/05/14(月) 16:39:35 ID:uOuXEmoB] >>702
704 名前:nobodyさん mailto:sage [2007/05/14(月) 16:43:53 ID:???] 試してから書けよっw
705 名前:697 mailto:sage [2007/05/14(月) 17:02:35 ID:???] すいません自己解決しました。
706 名前:nobodyさん mailto:sage [2007/05/14(月) 17:22:38 ID:???] 試してから書けよっw あれ?
707 名前:nobodyさん mailto:sage [2007/05/14(月) 21:44:56 ID:???] >698 確かMasterPageにScriptManagerを配置した場合は、そのMasterPageを使用したaspxでは ScriptManagerProxyを使わないといけないはず。
708 名前:707 mailto:sage [2007/05/14(月) 21:48:07 ID:???] ああSampleWebSiteってあるから自分で作成したページじゃないのかな。 じゃー関係ないかも。
709 名前:nobodyさん mailto:sage [2007/05/15(火) 01:51:25 ID:???] >>700 だからタブごとに別ページにしなさい。 んで、動的に生成するコントロールはコントロールのvisibleのtrue,falseで対応しなさい。
710 名前:nobodyさん mailto:sage [2007/05/15(火) 11:02:56 ID:???] >>709 おまえの指うんこくせえぞ
711 名前:nobodyさん mailto:sage [2007/05/17(木) 02:26:12 ID:???] webページのボタン押下時に、別のWAN内のサーバの共有ディレクトリからファイル読み込んで その結果を表示したいが、可能かな?クライアントは2000くらいなんだけど
712 名前:nobodyさん mailto:sage [2007/05/17(木) 03:20:30 ID:???] アクセス権さえ設定してればいけるんじゃね?と確かめもせず レスしてみる
713 名前:nobodyさん [2007/05/17(木) 07:26:12 ID:FTfyfp31] 自作したサーバコントロールのタグプレフィックスの定義に関する質問です。 Webサイトプロジェクト内にサーバコントロールを定義して、同一プロジェクト内で使用する場合 毎回タグプレフィックスが定義されるのが面倒なのでweb.configにタグプレフィックスを定義したいです。 <@Register ... <cc1:MyUserControl> <cc2:MyUserControl2> と自動的に宣言されるのが汚い。 web.config内にサーバコントロールのタグプレフィックスを定義する場合 assembty属性とnamespace属性とtagPrefix属性を指定するようなのですが (<page><control>要素の配下に) Webサイト内のApp_Codeで定義しているため、assembly属性に何を入れてよいのかわかりませんでした。 どのように定義すればよいのでしょうか? assembtyを""にしてもダメでした。 もしかして、別プロジェクトにしないとダメなのでしょうか?
714 名前:nobodyさん mailto:sage [2007/05/22(火) 11:28:30 ID:???] >>710 すみません、自己開穴しました。 アッ-!
715 名前:nobodyさん [2007/05/22(火) 13:05:49 ID: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 mailto:sage [2007/05/23(水) 08:17:38 ID:???] 自己解決しました。
717 名前:nobodyさん mailto:sage [2007/05/29(火) 03:07:54 ID:???] (; ^ω^)
718 名前:nobodyさん mailto:sage [2007/05/29(火) 10:24:53 ID:???] テキストボックスとボタンを適当に置き、 テキストボックスにタグ(またはタグの1部、?)等を入力してボタンを押すと、 System.Web.HttpRequestValidationException: 危険な可能性のある Request.Form 値がクライアント (TextBox1="<ta") から検出されました。 というページが表示されるのですが、ワケがありましてどうしても、 validateRequest=false するわけにはいかず、具体的にどう入力するとこの警告がだされるのかを 調べなくてはならなくなったのですが、情報がみつかりません。 どなたかお力添えをお願いいたします。m(_ _)m
719 名前:nobodyさん mailto:sage [2007/05/29(火) 13:26:26 ID:???] 単純に'<'と'>'で囲まれたタグ形式のものがエラーになるんじゃなかったけ? 俺ミスリードしてる??
720 名前:nobodyさん mailto:sage [2007/05/29(火) 14:46:22 ID:???] >>719 ありがとうございます。それが、 &# (←半角で) とか、<>の左側 < に+アルファベット1文字とか、 ちゃんとあるタグに限らないんです・・・ チェックリストはハードコーディングして隠されてるみたいなんです。
721 名前:nobodyさん mailto:sage [2007/05/29(火) 22:34:10 ID:???] ちゃんとあるタグってhtmlに存在するタグってこと? それならたぶんエラーにひっかかってるのはhtmlタグじゃなく XMLのタグあたりじゃないか? 俺はそういうものなんだと思ってたけど… 誰か詳しい人解説きぼん
722 名前:nobodyさん mailto:sage [2007/05/30(水) 00:36:44 ID:???] 自分なら「validateRequest=false」とは無関係に まず正常系の処理として要求を満たす入力可能な文字集合の作成を検討する。 設計者ならば要求を満たす機能を考えることが求められるし 開発者ならば要求を満たす機能を提案し説得することが求められる。 なにより共通して言えるのはエンドユーザの要求を汲み取ることが求められる。 ということでブラックリストを列挙するのではなく ホワイトリストを作成するのが普通な気がしない? 異常系の仕様は予算に応じてピンキリでいくらでも考えられるだろうし・・・ それこそHttpRequestValidationException発生時に別ページに飛ばすだけの手抜きまで。 それでもあえて回答を考えてみると, 「"具体的にどう入力するとこの警告がだされるのか"は非公開です。」 となる。 「validateRequest=falseは出来ない」とか「調べなくいけなくなった」とか 書いてる時点でこんな回答無意味かも知れない。
723 名前:nobodyさん mailto:sage [2007/05/30(水) 11:20:03 ID:???] postbackした後に任意の<a name>タグに位置を合わせたいんだけどどうしたら良いでしょうか? redirectでResponce.redirect("moyasi.aspx#kani")だと初期状態に戻ってしまうしどうしていいかわかりません(><)
724 名前:nobodyさん mailto:sage [2007/05/30(水) 15:51:02 ID:???] とりあえず自己解決。 PageのPredrenderでRegisterStartupScript使ってjavascript書きました。 もうちょっと美しい方法ありそうだけどなぁ…
725 名前:nobodyさん mailto:sage [2007/05/31(木) 00:12:46 ID:???] .NET になってから、Response.Flush()はどういった場面で使うの?
726 名前:nobodyさん [2007/06/05(火) 11:47:32 ID:5EDNjM+0] 質問です。 環境:VS2005、C#+SQL2005 複数人が更新するWebアプリで楽観的ロックを使用してDBにレコードをインサートする際 あるカラムA(IDのような一意のint型のカラム)に重複した値が入るのを避けるにはどうすれば良いのでしょうか? SQL権限の関係で主キーは設定出来ずSQLで自動で値をふる機能も使えません。 現状は @DBからカラムAの最大値を取得して1を足す A@で取得した値をインサート文のvalueに入れてインサート文を実行 という流れを一つのトランザクションで行っていますが、複数の端末から同時に上記@Aの処理が 実行された時、カラムAの値が重複する場合があります。 解決策として 1)@の開始直前からインサートが終わるまでテーブルをロック 2)@の処理で取得した値を変数に入れておきインサート実行の直前に重複のチェック の二つを考えているのですがどちらも決めてに欠けています… 1)はパフォーマンスの低下は確実、2)は根本的解決になっていない。 これ以外の重複を避ける方法というのはないでしょうか? それとも重複を諦めるかパフォーマンスを諦めるかの二択になるんでしょうか?
727 名前:nobodyさん mailto:sage [2007/06/05(火) 19:04:57 ID:???] >726 unique制約もだめなん? 別トランザクションでユニーク値を管理するテーブルを用意して そっちから値を引っ張ってくるってのはだめ? (うちの周りでは自動採番テーブルとか呼ぶね)
728 名前:nobodyさん mailto:sage [2007/06/05(火) 22:31:06 ID:???] >>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さん mailto:sage [2007/06/06(水) 11:34:51 ID:???] 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 mailto:sage [2007/06/06(水) 11:39:34 ID:???] あ、ソースはこれです。 pietschsoft.com/Blog/Post.aspx?PostID=762 URL書き換えを正規表現できるってことでトライしてますがいろいろつまづいて 以前にもここで質問してます・・・おかげさまで開発環境ではちゃんと動くようになったのですが。。。 すみません。よろしくお願いします。
731 名前:729 mailto:sage [2007/06/06(水) 14:33:45 ID:???] 事故解決。 どうにも次々に問題が発生するので思い切って削除しました。
732 名前:nobodyさん [2007/06/06(水) 19:41:27 ID:bb3nk3cA] ご意見聞かせて下さい。 環境VS2005、VB ブラウザの左側にtreeviewを使用したメニュー、右側の領域にコンテンツ というページ構成を実現させたいのですが、 メニューをクリックした時に、右のメニューを描画せずに左側の領域だけ 画面を切り替えるのは実現可能でしょうか? MasterPageを使用していますが、メニューも描画されてしまいます。 フレームは使用しない方向で。
733 名前:707 mailto:sage [2007/06/06(水) 21:28:38 ID:???] >732 Flashを使う。
734 名前:707 mailto:sage [2007/06/06(水) 21:46:17 ID:???] あ、TreeViewを使うのか。じゃあフレームを使う以外には無いよ。 Webアプリとはそういうものです。
735 名前:どとねと [2007/06/06(水) 22:40:48 ID:WXe4cmTf] 質問です。MSのホームページを見るとASP.netを動かす為の 用件として ・WindowsXP(Professional) ・IIS が必須条件らしいのですが、私のマシンはWindowsXP(Home)にも 関わらず、VS2005をインストールしたところIISがインストールさ れていないにも関わらずDebug実行する事が出来ます。 そしてファーストサーバにアップロードしたところ通常通り プログラム(C#)を動かす事が出来ています。 以上を踏まえるとVS2005をインストールすればWindowsXP(Home) でもASP.net開発はする事が出来るという事で良いのでしょうか?
736 名前:どとねと [2007/06/06(水) 22:49:18 ID:WXe4cmTf] あと、一つ質問があります。 上記にあげた私の環境でもプログラミングをした上で ファーストサーバにアップロードして動作させる事が出来た のですが、DBと連動させたシステムを作りたいと思って います。 そこで、ローカルで開発をする際にはDBにAccessを使用して ASP.netシステムを開発し、外部にASP.netシステムを (ファーストサーバを利用して)公開する際には、 DB接続文字列(SQL Server用に)さへ変えてしまえば、 Accessで開発したASP.netシステムをファーストサーバ上で 動かす事は出来るのでしょうか?
737 名前:nobodyさん mailto:sage [2007/06/06(水) 22:59:24 ID:???] >>732 まずメニューをどっちに置きたいのかはっきりしてもらおうか
738 名前:nobodyさん mailto:sage [2007/06/06(水) 23:01:19 ID:???] 微妙なSQLの構文の違いとかパラメータクエリの扱いの違いとか食らう可能性があることを思うと 最初からSQLServerで作った方がいいと思うよ。
739 名前:nobodyさん mailto:sage [2007/06/06(水) 23:01:24 ID:???] >>736 素直にSQL Server Express Editionでやっとけ。
740 名前:nobodyさん mailto:sage [2007/06/06(水) 23:02:49 ID:???] VS2005入れると開発Webサーバが入るからそれが動いてる。 多少違いはあるが、まあ普通に開発する分にはまずまず問題ない。
741 名前:どとねと [2007/06/06(水) 23:11:29 ID:WXe4cmTf] >>738 本当は、私もSQL ServerでやりたいのですがHomeEditionなので インストール自体が出来ないのでAccessを使っています。。。 >>739 もしかしてHomeにもインストールする事が出来るのですか? ちょとぐぐって調べてみます。 >>740 ありがとうございます。疑問が解決しました。
742 名前:どとねと [2007/06/06(水) 23:14:52 ID:WXe4cmTf] どうやら、Windows 2000 Sererが必要な様ですね。。。 何とか自宅でASP.netシステムを構築出来る環境を 整えたいのですが無理でしょうか。
743 名前:nobodyさん mailto:sage [2007/06/06(水) 23:15:47 ID:???] っつかVS入れたらSSEEも入ってるだろ、あえてはずさない限り。
744 名前:nobodyさん mailto:sage [2007/06/06(水) 23:17:19 ID:???] ttp://www.microsoft.com/japan/sql/editions/express/sysreqs.mspx よくみろ
745 名前:どとねと [2007/06/06(水) 23:24:48 ID:WXe4cmTf] >>743 申し訳ありませんが、SSEEとは何の略でしょうか? ぐぐってみたら 「Ship's Signals Exploitation Equipment (SSEE) 」 がトップに出てました。SQL Server関係だとは思うのですが。 もっと色々とのぞいてみます。 >>744 WindowsXP(Home)SP2も大丈夫みたいですね^^; 即効インストールしてみます。