【質問】ASP.NETスレ Part3【議論】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/10/09(月) 10:04:09ID:luJDzNn3Part1 - 【質問】 ASP.NETスレ 【議論】
http://pc5.2ch.net/php/kako/1040/10406/1040698263.html
【質問】ASP.NETスレ Part2【議論】
http://pc8.2ch.net/test/read.cgi/php/1111480331/
0332nobodyさん
2007/01/30(火) 21:39:31ID:???http://support.microsoft.com/kb/308252/ja
http://www.atmarkit.co.jp/fdotnet/basics/regex01/regex01_02.html
0333nobodyさん
2007/01/31(水) 00:20:55ID:???RegularExpressionValidatorコントロールでしょう。
http://www.microsoft.com/japan/msdn/enterprise/pag/securityguidance/paght000001.aspx#paght000001_usingaregularexpressionvalidatorcontrol
0334nobodyさん
2007/01/31(水) 01:20:46ID:cBvXWViJregexクラスは後々色々と使えるからオススメって上司が言ってた
俺は馴染めなくて使ってないが
0335309
2007/01/31(水) 07:24:40ID:KvtstY0aいや、そっちじゃなくて、mxレコードが存在するかどうかをチェックしたいのです。…
//メールアドレスの正当性チェックルーチン
protected bool MailCheck(string mailAddr){
Regex mailRegEx = new Regex("(?<user>[^@]+)@(?<host>.+)");
Match ml = mailRegEx.Match(mailAddr);
if (ml.Success) { //形式OK
/*
if(){ //mxレコードが存在する
return true;
}else{ //mxレコードが存在しない
return false;
}
*/
return true; //あとで消す
} else { //形式がおかしい
return false;
}
}
/*〜*/でコメントアウトしている部分がどうにもこうにも…
形式が正しい+MXレコードが引ける→trueを返す
そのほかは全部false
にしたいのですが…
0336nobodyさん
2007/01/31(水) 10:08:08ID:???mxレコードって何?
自分の知識の浅さに辟易するw
こんなのじゃだめ?
出先だから動作は確認していない…
//mxレコードの有無のチェック
bool IsExistMailAddress(string address){
return (mxレコードtを取得する処理.Count)>0;
}
//形式のチェック
bool IsValidAddress(string address){
bool Regex mailRegEx = new Regex("(?<user>[^@]+)@(?<host>.+)");
Match ml = mailRegEx.Match(mailAddr);return ml.Success;
}
//メールアドレスの判定
bool Check(string mail){
if(IsValidAddress(mail)){
if(IsExistMailAddress)
return true;
}
else{
return false;
}
else{
return false;
}
}
0338nobodyさん
2007/01/31(水) 10:59:26ID:???情報を小出しにすんな。
http://www.codeproject.com/aspnet/emailvalidator.asp
0339309
2007/01/31(水) 11:22:27ID:???ありがとう
試してみます。
>>338
すまん。
'-address' => $mail,
'-mxcheck' => 1 ←←
で通じると思ってた。普通に考えりゃ通じないわな…
訳して試してみます。ありがとう。
0340nobodyさん
2007/02/01(木) 19:36:19ID:MYaqNwfdSQLサーバにストアドプロシージャを使用してログインアカウントと
そのログインアカウント用のDBを作成しています。
-------------------------------------------
こういったDBが作成されます
ログインアカウント:A
パスワード:****
settingテーブル(Aユーザの設定)
infoテーブル(Aユーザの取得したデータを保存)
ログインアカウント:B
パスワード:****
settingテーブル(Bユーザの設定)
infoテーブル(Bユーザの取得したデータを保存)
ユーザが増える毎にログインアカウントとデータベースが増えていく
-------------------------------------------
これらの増えていくログインアカウントのログイン状況の管理ページを作成したいのですが
ログインアカウントの一覧をC#から取得する方法はないでしょうか?
新規にログインアカウント管理用のDBを作成する事は仕様上不可能です。
仕方がないのでログインアカウント一覧取得
↓
そのログインアカウントを使ってconnectionStringを作成してアカウント毎にログイン状況を表示
みたいなものを作成するために、ASP.NET ログイン アカウント 取得
などでぐぐったりhelpを読んだりしているのですがそれらしい記述がなく途方に
くれています。
どなたか方法をご存知の方はおられないでしょうか?
0341nobodyさん
2007/02/01(木) 23:56:33ID:???SQL認証に関する質問?
質問内容がよう分からんです。
0342>>340
2007/02/02(金) 02:08:50ID:???すいません、理論的に言葉にするのが苦手で…。
SQL認証ではないです。
やりたいことはログインの下のアカウント名を全て取得する事です。
以下に説明しなおしてみます。
SQLsever2005ExpressをSQLsever Management Studioのオブジェクトエクスプローラで見ると
-------------------------------------------
コンピュータ名\EXPRESS
┣+データベース
┗━セキュリティ
┗━ログイン
┣━A
┣━B
┗━sa
+サーバーロール
+資格情報
-------------------------------------------
上記の様になっています。
したい事は"ログイン"の下のアカウント"A","B","sa"を全て取得する事です。
ログインアカウントを取得する良い方法はないでしょうか?
ディレクトリ名から取得、データベース名やテーブル名から取得も出来ないのでどうしてやれば良いものかと。。
0343nobodyさん
2007/02/02(金) 12:24:01ID:PlF5DoK0SQLServer6.5のテーブルに接続しようとODBC接続でコードを書いたのですが、開発環境では動くのに
Webサーバー(開発機内のIISのWebフォルダ)へコピーすると以下のエラーが出てDBへの接続が拒否されます。
ERROR [08001] [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server が存在しないか、アクセスが拒否されました。
ERROR [01000] [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).
SQLServerに対する接続は標準接続で接続文字はサーバーエクスプローラーからコピーしてきました。
Dim cnn As OdbcConnection
Dim dr As OdbcDataReader
Dim cm As OdbcCommand
cnn = New OdbcConnection
cnn.ConnectionString = "Driver={SQL Server};server=HogeSV;uid=sa;app=MicrosoftR Visual StudioR 2005;wsid=hoge;database=hogeDB"
cnn.Open() ← ここでエラー
接続文字もTNSを追加してみたり、OLEDB接続に変えてみたりしましたが、やはりIISへ持っていくとダメです。
開発環境ではOKでIISでダメな場合のチェックポイントがあれば教えてください。
0344nobodyさん
2007/02/02(金) 14:39:38ID:???開発機のファイルシステムベースで開発していて、
それを開発機のIISへコピーして動作しないということ?
以下は試してみた?
1)IISへはVSのサイト発行機能を使用してみる
2)ローカルWebサイトで直接作成する(Webサイトを作る時、場所としてhttpでhttp://localhost/を選択する)
0345nobodyさん
2007/02/02(金) 20:34:09ID:???0346nobodyさん
2007/02/02(金) 22:12:11ID:SXH/UThlコードビハインドでずらっと並べて、textプロパティへ値を入れたり参照したりする
サンプルコードってどこかに無いでしょうか?
0347nobodyさん
2007/02/02(金) 23:18:10ID:???0348nobodyさん
2007/02/02(金) 23:18:35ID:???ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36506&forum=7
0350344
2007/02/03(土) 00:01:49ID:2oS0EMInRepeaterでTextBoxを表示させて、それぞれアクセスすればよろし。
0351nobodyさん
2007/02/04(日) 08:58:56ID:???クラスライブラリ形式で作った。
クラスライブラリにするとdllとしてASP.NETプロジェクトから取り込まれるが、
このdllの中のアセンブリリソースを*.aspxから直接参照する方法ってないのかな。
サイト内のアセンブリリソースだと<#$ Resource: messages, hoge #>とかできるけど。
0352nobodyさん
2007/02/05(月) 00:48:14ID:???色の設定ができるダイアログを出す術はあるのでしょうか。
調べては見たものの、見つかりませんでしたので質問させていただきました。
0353343
2007/02/05(月) 09:31:07ID:???どうもです。
1はやってみましたが、同じ結果でした。
2はソリューションファイル以外をIISの管理下のフォルダへ直接置くということですよね?
こちらはこれからやってみます。
同一マシンからなのに、「見つからない」というのがどうも解せなくて・・・。
>>345
ドライバは判りませんが、開発環境からは見えているので、pingが通らないということは
ないと思います。現に、マシン名を使ってのpingも通ってますし。
0354344
2007/02/05(月) 10:23:23ID:???ファイルシステムベースで開発してるマシンと、IISが動作してるのは別PC?
とりあえずWindowsFormでSQLサーバに接続するコードを書いてみて、
それをIISの乗ってるPCで実行して試してみたら?
だめなら物理的に見えない可能性が高い。
接続できたらIISの設定等の可能性が高いということで。
0355343
2007/02/06(火) 11:10:43ID:???簡単なページを作成して、
2)ローカルWebサイトで直接作成する(Webサイトを作る時、場所としてhttpでhttp://localhost/を選択する)
をやってみましたが、やはり同じように拒否られます。
>ファイルシステムベースで開発してるマシンと、IISが動作してるのは別PC?
同じです。
というか、本来のWebサーバ上でエラーが出たので、開発機内のIISへコピーしてみたら、同じエラーが出ているのです。
あと、WindowsFormでDB接続部のコードを丸写ししてみたところ、問題なく接続できました。
値も取れます。
IISのどこかに設定があるのでしょうか?
Oracleには何も問題もなく接続できるのですが・・・。
0356343
2007/02/06(火) 11:57:37ID:???VB6のアプリも問題ないですし。
ASP.NETだとだめなんですよね・・・。
0357344
2007/02/06(火) 19:58:02ID:SPFBBkyrSQLサーバへの接続はSAでの接続?
普通にASP.NETは動作するんだよね?
→まずASP.NETが動作するか確認しよう
聞いている現象だと、ASP.NETのアカウントがSQLServerのユーザになってないような気がする。
IIS上で動作してるASP.NETはASP.NETアカウントで接続しようとするので、
SQLサーバなどに権限がないと接続できない。
それが違うとしたら、IISのスナップインで規定のWebサイトあたりを見てみると幸せになれるかもしれない。
0358343
2007/02/06(火) 20:14:29ID:???あぁ、タイミング良くレスが。m(_ _)m
普通のASP.NETページはもちろん動いています。
SQL-Server6.5への接続だけができません。
接続ユーザはsaです。
標準接続でDB接続文字にsa等があってもASP.NETアカウントで繋げようとするんでしょうか?
IISのスナップインというのは、IISサービスマネージャのことでしょうか?
と思ったら、参照というのがありますね。
ちょっと詳しく見てみます。
0359nobodyさん
2007/02/06(火) 20:15:02ID:???SQLServer6.5ってのが、ちょっとポイントかな。
もう10年ぐらい前なかんじだし、今時のドライバでいいのかどうかちょっとわからん。
でも、そもそも接続用のプロトコルはどうしてるの?
名前解決が出来てないとか普通にある話だと思うけど。
とりあえずサーバー側、クライアント側双方の接続をTCP/IPを最優先にして試してみるといいよ。
Named PipeなのにIP指定とかありがちな罠なんだけど。
343の接続文字列は、同一の内容をASPに持ち込んで動くの?
それとIISとSQLServerは同一セグメントにあるの?
0360343
2007/02/06(火) 20:45:55ID:???>>359
やっぱりDBが古いんですかねぇ。orz
前にも書きましたが、WindowsFormに同じコードを書くと、問題なく接続できます。
若干コードは異なりますが、従来のASPでも動いています。
ASP.NETでもVS内のWeb開発サーバー経由なら問題ありません。
IIS配下で動かすとダメなんですよね・・・。
今、ふと思い出しましたが、Windows2000上にSQLSserver6.5を入れているのが悪いのでしょうか?
6.5って元々NT4ベースですよね。
他の方法では接続できるので、この点はあまり気にしていなかったんですが。
0361nobodyさん
2007/02/06(火) 22:01:11ID:???以前のVBなんかだとラベルとかのコントロールにインデックスを付けて、Forループとかで
キャプションを書き換えたりとかやってましたが、ASP.NETで同じような処理をするには
どうすればいいのでしょう?
IDってインデックスみたいな使い方ってできませんよね?
0362344
2007/02/06(火) 22:06:05ID:SPFBBkyr>標準接続でDB接続文字にsa等があってもASP.NETアカウントで繋げようとするんでしょうか?
初めに断っておくけど、SQL7以降しか知らないので、間違ってたらすまん。
よく考えればWindowsFormでも同じ接続文字列で接続できてるので、問題はないかもね。
そう考えると難しいなぁ。
でも原因はIIS上でだけ動作しないということなので、IIS上とその他の違いを検証してみるのが
解決の近道だと思う。
仮に、SQLServerExpressで接続する環境を整えてみたらと思う。
→もし接続できたら、SQL2005とSQL6.5の違いが原因と区別できる
管理ツールフォルダにある、インターネットインフォメーションサービスをいじると幸せになれるかも。
0363344
2007/02/06(火) 22:37:19ID:SPFBBkyrページに配置したコントロールにアクセスする方法としては、
protected void Page_Load(object sender, EventArgs e)
{
this.TextBox1.Text = "a";
foreach (Control a in this.form1.Controls)
{
if (a.GetType() == typeof(TextBox))
{
TextBox b = (TextBox)a;
b.Text = "ぬるぽ";
}
}
}
でアクセスできると思うけどどう?//C#ですまん
0364nobodyさん
2007/02/06(火) 22:56:44ID:???レスサンクス。
C#判らんので、ちょっと説明をお願いします。
> foreach (Control a in this.form1.Controls)
この行はページ上にあるコントロールを全部見ていくということですよね?
> if (a.GetType() == typeof(TextBox))
で、ここで参照しているコントロールがテキストボックスかどうかを判定していると。
> TextBox b = (TextBox)a;
で、ここの書き方がよく判りません。
VBだとここはどういう書き方になるんでしょう?
0365344
2007/02/06(火) 23:06:41ID:SPFBBkyrごめんVBはさわったことがないので、どういう書き方かわかんないw
それぞれ説明すると
> foreach (Control a in this.form1.Controls)
Control型の変数aに、そのページ上に配置されてるコントロールを順次いれていきますよということ
> if (a.GetType() == typeof(TextBox))
そのaという変数のクラスの形がTextBoxであったら・・ということ
> TextBox b = (TextBox)a;
aはControl型の変数なので、TextBox型の変数bにキャストして代入しますよということ
VBだとたぶん、
TextBox b = a as TextBox
とかなのかな?
0366nobodyさん
2007/02/06(火) 23:13:58ID:???0367344
2007/02/06(火) 23:19:21ID:SPFBBkyrVBでも同じようなのがあったように思って想像で書いたんだもん(´Д⊂グスン
間違いを指摘してくれるのもありがたいけど、よければあなたの知恵も
貸しておくれよ(´Д⊂グスン
0368364
2007/02/07(水) 10:33:07ID:???昔のBasicとかだと、全部見るなんていうのはムダっていう感覚があったかと思いますが、最近は考え方そのものが
違うんですね。
VBだとこんな感じになりました。
For Each a As Control In form1.Controls
If TypeOf a Is TextBox Then
Dim b As New TextBox
b = a
b.Text = "ガッ"
End If
Next
これでバッチリと思って実際に使おうとしたら、MasterPageを使っているせいか実際にコントロールを参照したいページが
見えません。
参照したいページのコード上で
For Each a As Control In Form.Controls
とやってもマスターページ上のコントロールを拾っているようです。
該当ページのID名を名指ししても.Controlsが候補に出てきませんし、どうすれば指定ページの参照ができるんでしょう?
最近.NETを始めたので、クラスとか継承とかの概念がイマイチ掴みきれなくて難儀してます。
0369nobodyさん
2007/02/07(水) 11:57:03ID:???そもそも、マスターページ使うとFormじゃなくなるじゃない。
Formを見るんじゃなくて、コンテンツプレースフォルダの方を見ないといけないと思うよ。
ドキュメントアウトラインを見るときっと幸せになれる。
0370364
2007/02/07(水) 16:21:34ID:???ttp://msdn2.microsoft.com/ja-jp/library/xxwa0ff0(VS.80).aspx
ここにあるFindControlのサンプルコードを使ったところ、目的とすることが実現できました。
ちょっぴりシアワセな気分です。
判ってみればなーんだですが、資料が無いとワケワカですね。
知らない単語がボコボコ出てくるし。
マスターページを使うとFormじゃなくなるなんて、考えてもいませんでした。
これからももっと精進します。
ありがとうございました。
0371nobodyさん
2007/02/08(木) 00:18:13ID:???>For Each a As Control In Form.Controls
>とやってもマスターページ上のコントロールを拾っているようです。
単純にMe.Controlsにすれば良いんじゃ…
MasterPageからContentPlaceHolder内のコントロール参照するか、
逆にContentPlaceHolderからMasterPageのコントロール参照するならFindControl要るけどさ。
0372nobodyさん
2007/02/08(木) 00:28:08ID:???Dim b As New TextBox
b = a
無駄に新しいインスタンス作る必要ナサス(・ω・`)
0373344
2007/02/08(木) 00:50:00ID:mDr34b0yprotected void Page_Load(object sender, EventArgs e)
で
this.Controls
だと、残念ながらポトペしたコントロールは取得できないのよね。
Dim b As New TextBox
は俺も気になった。
しかもループ内でdimすると、たぶん次々と作られるんだよね?
ループ外で
Dim b as textbox
しといて、ループ内でキャストしていれてあげたほうがいいとは思う。
0374nobodyさん
2007/02/08(木) 00:58:13ID:???プロパティの設定だけするんならこんなんで良いかw
Dim ctl As TextBox
For Each a As Control In Me.Controls
If TypeOf a Is TextBox Then
With DirectCast(a, TextBox)
.Text = "ぬるぽー"
End With
End If
Next
0375nobodyさん
2007/02/08(木) 12:38:41ID:???接続文字列は問題ないし、WindowsFormだとOKという事は、
IISというかASP.NETが動作しているアカウントのプロファイルでの、接続プロトコルの問題だと思う。
と思ったけど、Net−Libraryの設定はHKLMなんでアカウント単位ではないみたい。
だけど検索してみると、Net-Library設定をTCP/IPのみにしてみると良いみたいな話もあるんで、
試してみたらどうでしょうか?
ttp://www.ilovex.co.jp/Division/SRD/archives/2004/11/adonetsqlserver.html
ttp://www.sqlpassj.org/dbe/dba/01.aspx
0376nobodyさん
2007/02/09(金) 01:38:57ID:???Comet(元の名前なのでしょうか?)を使用して、
イベント駆動型のアプリケーションを作成したいと考えております。
CometがAtlasに改名されたようにも聞きましたが、
Cometを使用する場合、どのようにすればよいのでしょうか。
調べては見たのですが、あまりよい結果が得られませんでしたので
お力を貸していただきたく質問させていただきました。
0377nobodyさん
2007/02/09(金) 09:16:27ID:???ASP.NET Ajaxの事?
http://www.microsoft.com/japan/msdn/asp.net/ajax/
それともWebサーバからPushするCometの事?
0378nobodyさん
2007/02/09(金) 09:47:48ID:???Ajaxは現在も使用しております。(AjaxControlToolkit等
Atlasという名前も出てきており、Cometというものの存在が
自分の中でうやむやでして、わかりずらい質問で申し訳ありませんでした。
0379nobodyさん
2007/02/12(月) 15:08:59ID:4By4m9oBテストサーバ(XPpro)に移して開くと下記エラー画でました。
サーバの設定が必要なのでしょうか?
Server Error in '/asp' Application.
配置したディレクトリィは、D:\asp/xxx/です。
よろしくお願いします。
0380360
2007/02/12(月) 17:46:30ID:???レスありがとうございます。
別PCにSQL鯖6.5を入れてみてもやはり同じ症状で繋がらず、2005EXを入れてテーブルを作ったら
問題なく動いたので、ほぼDBのせいだよなぁと思っていたところにレスを見ました。
SQL鯖6.5にも似たような設定ツールがあったので、TCP/IPにしてみたりしてみました。
すると、今まで「見つかりません」となっていたエラーが出なくなりました。
ただし、結果セットが空の状態ですが・・・。orz
それと、付属のエンタープライズマネージャが名前接続をしているのか使えなくなります。
どうやら接続手順の順番を変えるのではなく、接続方法そのものを変えてしまうような感じです。
それでも多少なりとも希望が出てきました。もう少しトライしてみます。
0382344
2007/02/12(月) 23:12:02ID:???ADO.NET2.0が、そもそもSQLServer6.5に対応しているか疑問だったりして。
・SQL Server 6.5 または OLE DB プロバイダには System.Data.OleDb を使う。
って書いてあったけど、接続して、どうやってデータバインディングさせてるの?
0383nobodyさん
2007/02/15(木) 15:08:36ID:???[DllImport("~/bin/test.dll", CallingConvention = System.Runtime.InteropServices.CallingConvention.Cdecl)]
private static extern UInt32 test();
~/bin/test.dllが見つかりません
という例外が出てしまいます。
DLLはBinフォルダに入れれば動くようなことが書いてあったのですが。
なおパスを ../bin/test.dllなどの相対パスや test.dll とした場合では上手く動きませんでした。
何が原因でしょうか。
0384nobodyさん
2007/02/15(木) 16:23:20ID:b636dXXTimport test.dll
でおKなんじゃなかったけ?
0385nobodyさん
2007/02/16(金) 12:29:43ID:???ヘルプ見ても、ドロップダウンリストだけWebControl クラスから継承されないというような書き方が
されているけど、プロパティそのものはエラーも出ずに設定できる。
表示ができないのにセットはできるのも変な話・・・。
0386nobodyさん
2007/02/16(金) 17:25:08ID:???0387385
2007/02/17(土) 14:46:08ID:???言語はVBな。
つか、VS2003やC#ならできるのか?
0388nobodyさん
2007/02/17(土) 19:11:52ID:???出力されたHTMLソースは確認してみたか?
ちゃんとtitle属性が設定されているぞ。
まぁ、IE6だとシカトされてしまうようだけど…
0389nobodyさん
2007/02/17(土) 19:43:39ID:???0390nobodyさん
2007/02/18(日) 11:42:23ID:me/LwcjU<authentication mode="Windows"/>
を書くと開発マシンではうまくいくけどテスト鯖 XP proで
サーバエラーになってしまいます。
どうすればよいでしょうか?
よろしくおながいします。
0391nobodyさん
2007/02/18(日) 12:29:06ID:39E9Hyx/0392390
2007/02/18(日) 17:00:34ID:eFlA2pE6問題になってる26行目を削除するとエラーは出ませんでした。
おながいします。
---------
構成にエラーがあります。
説明: この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下のエラーの詳細を確認し、構成ファイルに変更を加えてください。
パーサー エラー メッセージ: アプリケーション レベルを超えて allowDefinition='MachineToApplication' として登録されているセクションを使うことはできません。このエラーは、仮想ディレクトリが IIS でアプリケーションとして構成されなかった場合に発生します。
ソース エラー:
行 26: <authentication mode="Windows"/>
0393nobodyさん
2007/02/18(日) 23:36:46ID:???歯車にしてないんじゃないですかね・・・
つ http://aspplus.nobody.jp/200612/17b/17b.htm
最も下のほう「サンプル3」などをどうぞ。
0394390
2007/02/19(月) 08:52:44ID:palmIOuEありがとうございます。
歯車にするディレクトリは親だけでなく子もしなければだめだったんですね。
0395nobodyさん
2007/02/19(月) 13:47:03ID:RZInx/ZJASP.NET2.0でListBoxの個々のアイテムに対してToolTipをセットすることってできましたっけ?
もしできないのであれば、何か代用できるものはありますか?
0396nobodyさん
2007/02/19(月) 16:35:52ID:???ListItemにはToolTipプロパティは無かったと思う。
ListBoxのToolTipに設定するしかないでしょうね。
イベント駆動で設定できるだろうけど、単純にやると
ポストバックしちゃうから、クライアントスクリプトでやるとか
AJAXのUpdatePanelでやるとか代替手段はありますね。
0397nobodyさん
2007/02/20(火) 12:15:15ID:???AJAXはよく判ってないのですが、これならできそうな気がします。
ありがとうございました。
0398nobodyさん
2007/02/20(火) 21:13:05ID:???データベースのAccessとSQLServerって接続とか使い勝手とか違いますか?
別物って考えた方がいいんでしょうか?
WebMatrixで作ろうと思うんですが、
Access、もしくはSQLServerのメリット・デメリットあったら教えてください
あと、MySQLって使えましたか?
よろしくお願いします
0399nobodyさん
2007/02/20(火) 22:13:20ID:???初めてASP.NETに触れるor勉強に使うなら、
Visual Web Developer 2005 Express Edition
& SQLServer 2005 Express Edition
の構成がお勧め。今さらWebMatrix使うこともないべ。
AccessとSQLServerのメリット・デメリットについては、
google先生に聞いてくれ。そっちの方が多分わかりやすい説明あるだろ。
MySQLも使えるけど、初めてDB使うならSQLServerの方が楽じゃないかな。
0400nobodyさん
2007/02/20(火) 23:20:58ID:???いろいろググったのですが、わかりません。アドバイスをお願いします。
やったこと
・aspnet_isapi.dllにpdf拡張子をマッピング。
・IEから直接pdfを見に行く→ログイン画面に飛ぶ(これはOK)
・ところが、正常ログイン後、pdfファイルが表示されない(これが?)
・web.configにHttpHandlerの指定をしたが、同じ症状
<add verb="*" path="*.pdf" type="System.Web.HttpForbiddenHandler">
なんとなく、HttpHandlerの設定部が怪しいと見ているのですが、
どうでしょうか?
環境:win2003srv,VisualWebDeveloperExp&SQLServer2005Exp,IIS6.0
ご意見、よろしくお願いします。
0402344
2007/02/21(水) 15:25:51ID:???OLEDB、ODBC、ADOで接続できるDBなら接続できるよ
無料でテストできるSQLServerやオラクルがあるから、普通に
データベースを使ったほうがいいきがする。
0403400
2007/02/21(水) 20:06:29ID:???返答しようとしましたが、会社からは2ちゃんに書き込めず、この時間になってしまいました。
で、自己解決です。
web.configに書き込むのが、
<httpHandlers>
<add verb="*" path="*.pdf" type="System.Web.StaticFileHandler" />
</httpHandlers>
でした。typeの指定をSystem.Web.UI.PageHandlerFactoryとしていたのが
NGの原因でした。
お騒がせしました。
0404nobodyさん
2007/02/21(水) 20:50:15ID:???回答ありがとうございます
今使用しているサーバが2000Serverなんで、WebMatrixがいいかと思ったんです
テスト用に2003Serverにするかもしれないですが、現状は2000Serverなので・・・
もう少し調べてみます
ありがとうございます
>>402
回答ありがとうございます
いろいろ接続はできるんですね
でもって、SQLServerのほうが良さそうですね
ありがとうございます
0405344
2007/02/21(水) 21:38:29ID:???2000Serverだろうが2003Serverだろうが、開発ツールは関係ないよ。
どんなツールで作っても、同じものを作れば基本的に同じものがサーバにアップロードされるわけだから。
開発マシンがWin2kで、VisualStudio2005を走らせるのが重いかも・・・というのはわかるけど、
でも、これはサーバのOSとは関係のない話。
SQLExpress等のほうが、ストアドプロシージャや、ビュー、トリガ、ロールバックなど利用できるので、
どうしてもAccessを利用しなければならないというのでなければ、データベースサーバを利用した
ほうがいいと思う。
VisualWebDeveloperもSQLExpressも商業利用可で無料だったはずなので、あえてAccessを使う必要は
ない気がする。MySQL、SQLServer、Oracleのデータベースのうちどれがいいかは、またこれは別の話だけど。
0406nobodyさん
2007/02/22(木) 21:16:02ID:???>2000Serverだろうが2003Serverだろうが、開発ツールは関係ないよ。
え、そうなんですか?
あまり詳しく調べられてないので・・・
ASP.NET1.1と2.0は別物〜という感じで考えてたんですが、
根本から間違えてるのかな・・・orz
Accessを使えるかを聞いたのは、
現状のデータベースのほとんどがAccessで管理しているからです
ただそれだけなので、他のSQLに移行できるならそちらにします
0407nobodyさん
2007/02/22(木) 21:21:07ID:???0408nobodyさん
2007/02/23(金) 00:42:27ID:???OSの上にWeb鯖のIISが乗ってる
IIS上で .Net1.xや .Net2.0で作成されたWebアプリを動かすことが出来る。OK?
( .Net1.1のフリー開発環境がWeb Matrix、.Net2.0のフリー開発環境がVWD2005と)
現在Accessでデータを管理していて、
ユーザが触る部分をWebアプリに変えるとゆー認識で間違ってないなら
DBはSQLServerにするのが一番良いんじゃまいか。
0409344
2007/02/23(金) 01:11:51ID:???ASP.NET 1.1と2.0は別物かもしれないけど、その両方ともWin2kでも
Server2003でも動作する。なので、サーバのOSによって開発ツールが
制限されることはないよ。
>現状のデータベースのほとんどがAccessで管理しているからです
またいろいろと意味をくみ取りやすい発言だなw
・今までの開発経験がAccessが主なので、Accessだと安心というのなら
→なら迷わずSQLに進んだ方がいい
・現状のAccessのデータベースを流用したいというのなら
→面倒でなければ、テーブルをSQLに移植したほうがいいとおもう
→無理そうならAccessでも仕方なし。
使い勝手はASP.NETで使用するにおいては、SQLとAccessはそれほど変わらないと思う。
・SQLサーバを利用してるけど、開発時にSQLサーバにAccessで接続して管理してるというのなら
→SQLExpressにも普通にAccessでアクセスできるはずだし問題ない。
つーわけで過去の資産がAccessでない限り、SQLサーバを使うで問題ないと思うよ。
0410nobodyさん
2007/02/23(金) 16:10:01ID:???サーバーOSに入れれば接続ユーザ数は制限無いんでしょうか?
0412344
2007/02/23(金) 16:34:31ID:???(・∀・)つhttp://www.microsoft.com/japan/sql/prodinfo/features/compare-features.mspx
俺が唯一困ったのが、SQLAgentだっけ?定期バックアップなんかを設定する
タスクが使用できないこと。
でも別にWindowsのタスクでosqlを実行させればいいだけだけどね。
0413nobodyさん
2007/02/27(火) 07:22:46ID:???バッチ+タスク登録なんて当たり前
タスクを有効に使ってちょーだい
0414410
2007/02/27(火) 21:33:16ID:???サンクス。
osqlチェックしてみますた。タスク使えばバックアップもできそうですね。
サイズ的には4Gあれば当面はOKだから、とりあえずそっちへ乗り換えようと思います。
0415nobodyさん
2007/02/27(火) 21:44:07ID:???@鯖には .NetFramework は必要ですか?
A鯖に .NetFramework がインストールされていたら、
ユーザーには.NetFrameworkをインストール必要は無い?
めっちゃ初歩なんですが、教えてください
0418nobodyさん
2007/02/28(水) 22:18:43ID:ty6wwla4どうすれば良いんでしょうか?
0419418
2007/03/01(木) 03:29:05ID:???asp.netのコードビハインドからフレームを表示するんだと
思ってたのがそもそもの間違いでしたorz
HTMLでFREAMSETを指定してフレーム毎に区切ってSRC属性で
処理する.aspxを指定してやれば良かった…
0420nobodyさん
2007/03/01(木) 17:52:27ID:jmrrF5Odページ上にいくつかのテキストボックスを配置しておいて、AutoPostBack=Trueとし
ポストバックを発生させたテキストボックスを調べて、次のテキストボックスへフォーカスを
移したいのですが、このようなことは可能でしょうか?
ポストバックを発生させたコントロールを得ることはできるのでしょうか?
0421420
2007/03/01(木) 18:01:59ID:???上記のテキストボックスはページ上に直接配置したものではなく、
Page_Loadイベント内でコードによって配置しています。
0422nobodyさん
2007/03/01(木) 22:28:03ID:???Focus移動ならJaveScriptでやりなされ
>421
動的にコントロールを配置するなら、Page_Initializeで配置しなされ
0423nobodyさん
2007/03/01(木) 23:25:43ID:jy3mPOcmファイルの内容は下の感じ。
<browsers>
<browser refID="Mozilla">
<capabilities>
<capability name="cookies" value="true" />
</capabilities>
</browser>
</browsers>
ヘルプドキュメントの仕様どおりだと、
これでWeb.configでCookieless="UseDeviceProfile"としたとき、
Mozilla系ブラウザのデフォルトでCookielessセッションが無効になるはず
なんだけれども、反応なし。
Web.configファイルで何か設定しないといけない?
0424nobodyさん
2007/03/02(金) 00:52:35ID:???App_BrowsersフォルダにBrowserファイルが複数あったのが原因だったみたい。
一つに統合したら読み込まれるようになった。
ヘルプにこんなこと書いてあったかな……
0425nobodyさん
2007/03/02(金) 09:02:27ID:???別のウィンドウを開きたいのですが、イベントプロシージャ内から別ウィンドウを開くコマンドが
判りません。自ページを遷移させるのならできるのですが・・・。
「window.open('http://hogehoge');」を予めイベントに予約する方法は見つけたのですが、
これではイベント発生時に値を渡すことができません。
コード上から値を渡して別のウィンドウを開くということはできないのでしょうか?
0426nobodyさん
2007/03/02(金) 11:08:00ID:???0427nobodyさん
2007/03/02(金) 14:33:17ID:???JavaScriptのページでも見て考えてくれ
0428344
2007/03/02(金) 15:12:06ID:???そのボタンを押したポストバック時にのみ、
動的にwindow.openを生成して、別aspxを開くようにすれば?
そのaspxに引数を渡すには、クッキー、セッション、getなど
好きな方法でいいかと。
0429425
2007/03/03(土) 17:15:46ID:???ありがとうです。
ヒントを元にRegisterClientScriptBlockを見つけることができました。
他にも色々使えそうなテクになりそうです。
0430nobodyさん
2007/03/03(土) 20:06:55ID:???public struct test {
...
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
public Int32[] fixed;
}
のようにすれば動くことは確認できたのですが
可変長のときにどうすればよいかがわかりません。
可変長のときはどのようにすればよいのでしょうか?
0431344
2007/03/03(土) 21:28:43ID:???2.0ならClientScriptManagerを使うが吉
>>430
メモリを確保して、データを保存しておいて、
構造体には確保したメモリのポインタとデータ容量と個数を
渡すような感じになるんじゃないかな?
↓こんな感じ?
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=32627&forum=7
■ このスレッドは過去ログ倉庫に格納されています