【質問】ASP.NETスレ ..
745:nobodyさん
10/01/19 08:50:22
>>741
なにをしたいのか今ひとつわからんが
Postbackしてきたときに、プロパティをチェックするんじゃ駄目なのか?
checked=true/falseで判別がつくと思うんだが
746:nobodyさん
10/01/19 09:32:15
AutoPostBackとの違いがわからん
747:nobodyさん
10/01/19 10:57:29
onとoffで両方ともvalue="**"を送信したいってことは、
javascriptなんかで、checkboxのvalueを動的に変更、
またはcheckboxそのものを動的に生成してるってことなんかね。
なんかその他の方法があるかもしれないけど、
今思いつくのはcheckboxの数だけhiddenfieldを設置して、
そこに値を入れておくな。checkboxのvalueはあくまでtrueやfalseを意味するものにしておく。
748:nobodyさん
10/01/19 15:20:20
>>745
俺にも何がしたいかいまいちよくわからんが、可能性がありそうなのは
ポストバックじゃなくて別のhtmlページにPostしたいとかじゃないかと
本人がもうちょっと詳しく説明してくれればいいんだが
>>746
AutoPostBackはただ単に、チェックボックスをチェックしたり外したときに
自動的にPostさせる機能
チェックを外したときにPostは実行されるが、そのPostされたデータに
チェックボックスの値は含まれていないわけだよ
749:741
10/01/19 21:24:12
>>747
CheckBox(runat=serverを書かない)とHidden(runat=serverを書く)を必ず対で配置
して、CheckBoxのonclickでJavaScriptでHiddenの値を書き換えて、submitされたら
Hiddenの値でCheckBoxのON/OFFを読み取る、というのは普段やっている手段です。
ただ、これを1つにまとめたカスタムコントロールが作れないものかと思ったので。
>>745
事情があって、Context.Response.Paramsの中にチェックオフの値を返したいんです。
コントロールのプロパティを参照するというのが訳あって出来ないので。
750:nobodyさん
10/01/19 23:14:27
CheckBoxがASP.NETで言うところのサーバコントロールでないというのは、これが初の情報?
それだと想定外だったから、イマイチよくわからないな・・
751:nobodyさん
10/01/19 23:25:48
どんな事情なんだろ。
全部のチェックボックスなめればいいんじゃないの?
752:nobodyさん
10/01/20 00:21:52
もし作るからHiddenFeildをベースにしたコントロールを作って、Renderでチェックボックスも一緒に生成すればいいのかな
JavaScriptはガリガリ書かないと駄目かな
753:nobodyさん
10/01/20 01:19:04
>>750
お前アフォだろ・・・・
754:nobodyさん
10/01/20 12:53:08
>>753
クスクス
755:nobodyさん
10/01/20 15:01:06
>>749
こんなユーザコントロールを作って、
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="TestUserControl.ascx.cs" Inherits="TestUserControl" %>
<input id="<% this.GetOwnerName(); %>_CheckBox1" type="checkbox" onclick="CheckBoxClicked('<% this.GetOwnerName(); %>')" />
<asp:HiddenField ID="HiddenField1" runat="server" />
public partial class TestUserControl : System.Web.UI.UserControl
public void GetOwnerName()
{
Response.Write(this.ID.ToString());
}
756:nobodyさん
10/01/20 15:01:54
こんな風なJavaScriptを書けば、ポトペタだけで実装できるんじゃないかな。
JavaScriptに関してはファイルにまとめておいてincludeするようにすれば使い回しできるし。
<head runat="server">
<script type="text/javascript" src="jquery-1.4.js"></script>
<script type="text/javascript">
function CheckBoxClicked(controlName) {
if ($("#" + controlName + "_CheckBox1")[0].checked) {
$("#" + controlName + "_HiddenField1")[0].value = "true";
}
else {
$("#" + controlName + "_HiddenField1")[0].value = "false";
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<uc1:TestUserControl ID="TestUserControl1" runat="server" /><br />
<uc1:TestUserControl ID="TestUserControl2" runat="server" /><br />
</form>
</body>
>>753
クスクス
757:nobodyさん
10/01/20 15:06:48
if文はまどろっこしいから、これでもいいか。
$("#" + controlName + "_HiddenField1")[0].value = $("#" + controlName + "_CheckBox1")[0].checked;
758:nobodyさん
10/01/20 18:43:48
>>753
煽ることしかできない無能
759:nobodyさん
10/01/20 22:08:23
暇だったんでカスタムコントロール作る方法で考えてみた
こんな感じでどうだ
Public Class CheckBoxR
Inherits System.Web.UI.WebControls.CheckBox
Property UnCheckedValue() As String
Get
Return CStr(ViewState("UnCheckedValue"))
End Get
Set(ByVal Value As String)
ViewState("UnCheckedValue") = Value
End Set
End Property
Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
Me.Attributes.Add("onclick", String.Format("{0:s}.value=({1:s}.checked)?'':'{2:s}';", Me.ClientID & "_UnChekedField", Me.ClientID, Me.UnCheckedValue))
MyBase.Render(writer)
writer.Write("<input type='hidden' id='" & Me.ClientID & "_UnChekedField' name='" & Me.ClientID & "_UnChekedField' ")
If Me.Checked Then
writer.Write("value='' />")
Else
writer.Write("value='" & Me.UnCheckedValue & "' />")
End If
End Sub
End Class
これでUnCheckedValueプロパティに値を指定しておけば、チェックオフのsubmit時に
指定された値が含まれるようになる....ような気がする
これで完全なポトペタでOK!なはず
760:nobodyさん
10/01/20 22:27:26
>>759
お、そのほうがいいんじゃね?
そうか、CheckBoxのOnClickに、そのままJavaScriptで書き込んでしまえばいいのか。
自分は同じScriptが何度も記述されるのが嫌だったので、別途functionを別途容易しちゃったけど、
簡便さではそのほうがいいかもしれん
761:nobodyさん
10/01/21 03:54:24
お前ら暇やさしいな
762:nobodyさん
10/01/21 07:45:31
クスクス
763:nobodyさん
10/01/21 15:38:25
すみません。 誰かお暇なかた教えてください。
VWDで Default.aspx に LoginView1 を配置し、LoggedInTemplate の中に label1 を配置しました。
Default.aspx.cs で、label1 にアクセスしたかったのですが見えません。
LoginView1.LoggedInTemplate. としても label1 は見えません。
どうすれば label1 にアクセスできますか?
764:nobodyさん
10/01/21 17:52:19
Label myLabel = (Label)this.LoginView1.FindControl("Label1");
if (myLabel != null)
myLabel.Text = "test";
765:nobodyさん
10/01/23 21:58:41
>>764
ありがとう!!
まだやってないけど試してみる!
766:nobodyさん
10/01/26 19:29:34 tqAuz1f1
FormviewでDfaultModeをinsert
この状態で、デフォルト値の設定したいのですが
どうすれば可能でしょうか。
767:nobodyさん
10/01/27 00:17:23
2個上見ても分からないか?
768:nobodyさん
10/01/27 11:41:52 idsxMd/1
>>767
ごめん見てなかった。普通にできた。
んじゃあ、例えば、
Gridviewとかで選択した項目を
formviewINSERTのデフォルト値として反映させたい場合はどうすればいいの?
探したが文献見つからん。
トーシローなんでお手柔らかに教えて下さいエロい人。
769:nobodyさん
10/01/27 13:07:27
OnItemCommandだかのイベントが発生し、
実行されるメソッドの引数にボタンクリックされた行数が格納されてるから、
それをキーにデータ取得して表示させればいいんじゃね?
770:nobodyさん
10/01/27 16:33:13
初学者です。
10日でおぼえるASP.NET3.5入門教室 という本をやりました。
雰囲気はつかめましたが、まだまだ何か作れるという感じはしません。
次は何に取り組めばよいでしょうか?
771:nobodyさん
10/01/27 16:39:42
プログラムは入門書を一通りやるのも大事だけど、
とりあえず何かを苦労して作ることが一番大事だと思う。
その過程で分からない事が山のように出てくるはずだからね。
まずは、Webアプリ系としてはDBを使用したゲストブックが無難かな
投稿できて、最新の投稿から順番に並んでるみたいな。
772:768
10/01/29 16:47:09
>>769
やってみたができん・・・・。
ググっても本屋でも文献見つからん・・・・。
とりあえず、Gridviewで選択。
選択した内容をformViewのinsertModeのそれぞれのTextBoxに初期値として飛ばしたいが、
わかる人いないか?
教えてエロい人
773:nobodyさん
10/01/29 18:43:10
選択ボタン作ったら、GridViewをダブルクリックだ。
そうすると SelectedIndexChangen んが出るんで、
そんなかで GridView1.SelectedRow なり好きなもの使って好きにやれ。
774:nobodyさん
10/01/29 20:00:37
>>772
>選択した内容をformViewのinsertModeのそれぞれのTextBoxに初期値として飛ばしたい
なんとなくSelectedRowからFIndControlして値を取り出す予感がするので一応。
GridViewの選択行からキーとなる項目を取り出してSELECT文を発行、
戻り値のDataTableなりなんなりをFormViewにバインドって流れな。
775:768
10/02/01 10:08:13
>>773、774
ありがとう、一応、FIndControlを指定してやって、
GridViewで選択してやれば、formViewのinsertModeに
TEXT(DB関係なし)を飛ばせるとこまではどうにかできたんだけど・・・・。
こんな感じ。
Protected Sub GridView1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridviewPageEventArgs) Handles GridView1.PageIndexChanging
If FormView1.CurrentMode = FormViewMode.Insert Then
Dim tb As TextBox
tb = CType(FormView1.FindControl("NameTextBox"), TextBox)
tb.Text = "Name"
tb.Enabled = True
End If
End Sub
このtb.Text = "Name"の"Name”の部分にデータを指定してやれば良いの?
あとさ・・・。
SELECT文を発行、戻り値のDataTableなりなんなりってのが
いまだに本読んでもイマイチ理解してなくて。
そこらへんの内容を学べる本とかサイトとか教えてくれるとありがたい
776:nobodyさん
10/02/01 16:47:32
Microsoft Visual Studio 2005によるWebアプリケーション構築技法を
まず読め。初心者向けの良い本だ。
777:nobodyさん
10/02/01 18:53:47
>>775
TableAdapterの自動生成ウィザードまじお勧め
URLリンク(www.atmarkit.co.jp)
URLリンク(msdn.microsoft.com)
URLリンク(msdn.microsoft.com)
778:768
10/02/01 19:30:00
>>776、777
こんな学生相手に皆親切にしてくれてありがとう・・・。
とりあえず読んでがんばてみるお!!
Microsoft Visual Studio 2005によるWebアプリケーション構築技法
って本についてだが、今使ってんのVS2008なんだけど応用できるかね?
まあそれ以前に解読できるかが問題だが・・・・。
あと、このスレの今までの内容見てて思ったんだが、
Formviewを使わないで表示とかできちゃうもんなの?
779:nobodyさん
10/02/01 19:49:00
>Microsoft Visual Studio 2005によるWebアプリケーション構築技法
>って本についてだが、今使ってんのVS2008なんだけど応用できるかね?
基本的な仕組みは変わってないから役立つんじゃない?
VS2005の機能でも十分に事足りてるし、VS2008ではC#3.5とASP.NET AJAXの機能ぐらいしか使ってないな。
>Formviewを使わないで表示とかできちゃうもんなの?
自分はデザインやClientScriptの関係からFormViewはほとんど使わない。
コントロールを手動で配置して、手動でデータを取得して表示させてる。
GridViewなんかもほとんど使わないな。
基本的なコントロールとRepeaterで事足りてる。
780:768
10/02/02 18:36:31
>>777
読んで実践して、なんとなく理解しました。
MSDNの関連記事も読んだけど、どんどん内容が枝分かれするせいか、
混乱してきて・・・これ結構読み込まないと厳しいですね頑張ります。
ありがとう。
>>779
これすごい。
実際、FormViewとかGridViewなんかより
自由度高いから極めたらいろいろ応用できそう。
Repeaterで作ってみたんだけど、今まで悩んでた、
formview,insertでのデフォルト値の問題に関しては解決できそうです。
ただ、Repeater内で記入した内容をデータベース(SQL)に挿入するってのは可能なんでしょうか?
一応、こんな記事を見つけたんだけど、これを応用してどうにかできないですか?
URLリンク(www.c-sharpcorner.com)
781:nobodyさん
10/02/02 19:23:36
>>780
Repeaterに
<asp:TextBox ID="tbEditName" Columns="80" Text='<%# this.GetColumnData(Container, "Name")%>' runat="server" style="ime-mode: active;" OnFocus="this.select();" ></asp:TextBox>
<asp:Button ID="DeleteButton" runat="server" Text="削除" CommandArgument='<%# this.GetColumnData(Container, "ID") %>' CommandName="Delete" OnClientClick="return confirm('削除しますか?');" />
<asp:Button ID="EditButton" runat="server" Text="編集" CommandArgument='<%# this.GetColumnData(Container, "ID") %>' CommandName="Edit" />
みたいにTextBoxとButtonを設置して、CommandArgumentに設定されたIDから、データベースのIDを取得できる
ID取得したらRepeater内にあるコントロールをナメて、同じIDを持つ行を取得して、
その行にあるTextBoxから入力内容を取得して更新すればいい。
for (int i = 0; i < this.rptTikuMaster.Items.Count; i++)
{
RepeaterItem ri1 = this.repeater.Items[i];
TextBox tbEditName = (TextBox)ri1.FindControl("tbEditName");
int editedID = int.Parse(lblEditID.Text);
if (editedID == ID)
{
//IDが一致したらデータを取得してSQLを更新する
break;
}
}
これはRepeater内にTextBoxを設置したパターンだけど、
別途Repeaterの外部にTextBoxを設置しておいて、
そこにRepeaterの編集ボタンを押した行のデータを表示させて、
編集さぜて保存するという方法もある。
782:nobodyさん
10/02/02 19:59:54
foreachを使わないと負けた気がする
783:nobodyさん
10/02/02 20:10:06
すんげー前のをコピペ流用してる奴だから許せw
webなんてだいたい設計者によって、新規追加、編集、削除の画面遷移パターンが数パターンしかないからな
784:nobodyさん
10/02/02 21:14:13
ソース出せ厨がぐうの音も出ないほどのソースまるだしだな
785:nobodyさん
10/02/02 21:24:13
C#でASP.NETを始めましたど素人です。
質問なんですが、
サーバ側のC#だと、XmlDocumentやらArrayListやらのクラスを利用できるのですが、
クライアント側のC#だと、ライブラリ参照とかusingとか指定しても利用できないみたいなんですが
そーいう仕様なのでしょうか?
XmlDocumentとArrayListはけっこう頻繁に使用されるクラスだと思うのですが、クライアント側で使えないってのはけっこうダメージがでかいです。。。
786:nobodyさん
10/02/02 21:39:41
イミフ
787:nobodyさん
10/02/02 21:43:07
>>785
>クライアント側のC#だと、ライブラリ参照とかusingとか指定しても利用できないみたいなんですが
ブラウザで動作するJavaScriptとかのこと?
なら使用できないね。
独断的に言わせてもらえば、サーバ側はマイクロソフト製品だからなんとでもできるけど、
ブラウザはオープンな規格だからマイクロソフト仕様でそのまま使えることはない。
788:nobodyさん
10/02/02 21:48:09
あ、たぶん記述が足りなかったのですかね(すんません)。。。
クラ側をSilverlightで作成してて、言語はC#とザムルです。
クラ側のイベント処理がC#なんですが、なぜかXmlDocumentやArrayListが使用できない。
using System.Collections;
using System.Xml;
などは勿論指定しております。
789:nobodyさん
10/02/02 21:53:22
>>788
やっぱりsilverlightだったのか
XML関連に関しては
>.NET Framework と .NET Framework for Silverlight での XML 処理の違い
>URLリンク(msdn.microsoft.com)
を参照
ArrayListはジェネリクスのサポートで重複するからSilverlightでは削除されたはず。
790:nobodyさん
10/02/02 22:08:19
>>789
なるほど!
ありがとぅ!
791:768
10/02/04 11:24:14
>>781
やべえ、はじめてCommandArgumentの使い方が分かった。
ありがとうございました、解決しました!!
792:nobodyさん
10/02/06 18:22:22
今回はAJAX君が絡んでこなくて良い流れだった
793:nobodyさん
10/02/06 18:25:29
返答したのはすべてその人だけどな
794:nobodyさん
10/02/06 22:14:49
なんだソース教えて君が絡んでこなかったから良かっただけじゃん
795:nobodyさん
10/02/08 11:59:25
UpdatePanelを使って表示する要素を切り換えているのですが、
UpdatePanelの読み込みが完了した時に
JavaScriptを走らせることはできませんか?
画面全体がリフレッシュされないため、
スクリプトが実行されていないようです。
どうかお願い致します。
796:nobodyさん
10/02/08 13:22:09
>>795
Sys.WebForms.PageRequestManager の pageLoaded イベント
797:nobodyさん
10/02/08 14:48:26
ScriptManager.RegisterStartupScriptでも可能だった記憶が
あるゆる非同期更新後に常に実行させたいわけでなく、
特定のイベントでの非同期更新のみに実行させたい場合には、こっちのほうがいいかも。
798:795
10/02/08 14:58:18
>796
うまく動きました。
こんなに簡単に実現できるなんて思いませんでした。
ありがとうございます。
799:nobodyさん
10/02/09 01:52:06
今回はAJAX君はレスしたのかな?
800:nobodyさん
10/02/09 07:24:23
jQueryでやればいいよ
801:nobodyさん
10/02/09 21:56:28
↑やればいいよじゃ回答になりません。AJAX君はちゃんとソースを提示してください。
802:nobodyさん
10/02/11 18:16:27
>>801
AJAX君はAJAXの事以外は何も分からないので回答出来ません。
803:nobodyさん
10/02/11 18:37:11
↑とAJAX君が申しておりますw
804:nobodyさん
10/02/12 17:29:01
年月を指定して、カレンダーを表示したいんだけど、
こんなカレンダーを作るにはどうしたらいいのでしょうか・・・
┌─┬─┬─┬─┬─┬─┬─┐
│日│月│火│水│木│金│土│
│□│□│□│□│□│□│□│
├─┼─┼─┼─┼─┼─┼─┤
│ .1│ .2│ .3│ .4│ .5│ .6│ .7│
│□│□│□│□│□│□│□│
├─┼─┼─┼─┼─┼─┼─┤
│ .8│ .9│10│11│12│13│14│
│□│□│□│□│□│□│□│
├─┼─┼─┼─┼─┼─┼─┤
│15│16│17│18│19│20│21│
│□│□│□│□│□│□│□│
├─┼─┼─┼─┼─┼─┼─┤
│22│23│24│25│26│27│28│
│□│□│□│□│□│□│□│
├─┼─┼─┼─┼─┼─┼─┤
│29│30│31│ │ │ │ │
│□│□│□│ │ │ │ │
└─┴─┴─┴─┴─┴─┴─┘
※□はチェックボックスです。
実装したい機能としては
・年月を指定するテキストボックスを設け、ボタンを押したら指定した年月のカレンダーが表示される
・曜日の項目にあるチェックボックスをON/OFFすることで、同じ曜日のチェックボックスを一括でON/OFFできる
asp.netに標準であるカレンダーでも実現可能でしょうか。
不可能な場合、どのようにすれば実現できるでしょうか。
805:nobodyさん
10/02/12 21:40:06
>>804
このへん使って似たようなの普通に作れたような気がする
URLリンク(www.atmarkit.co.jp)
URLリンク(www.atmarkit.co.jp)
URLリンク(www.atmarkit.co.jp)
806:nobodyさん
10/02/12 23:53:19
曜日のとこアクセスするにはどーすれば
807:nobodyさん
10/02/13 00:34:26
AJAX君はAJAXの事以外は何も分からないので回答出来ません
808:nobodyさん
10/02/13 01:56:32
じゃ、お前がレスしろよw
お前の失点は、他人のレスを論ったこところで挽回できるもんじゃないんだぞ?
負けて口惜しかったなら、まともなレスをして見返すぐらいしろよ。
いい加減目を覚ませよ。
809:nobodyさん
10/02/13 06:49:05
>>804-806
DayRenderではイベントを発生させるコントロールは追加できないらしい
ためしにCheckBox追加してみたが、表示はされるがイベントがハンドリングされねえ
クライアントスクリプト仕込むとかでなんとかする方法もないではないだろうけど
どっちにしろ曜日のヘッダー部ではDayRenderは発生しないようだ
ということで、俺なら自分でカレンダーすべてレンダリングするコントロールを自作するかな
810:nobodyさん
10/02/13 18:48:32
ていうかAJAX使えば悩むところなんて全く無いだろ。
また例によってAJAX使用禁止とか訳分からん縛りでもあるのか?質問者は
何が聞きたいんだ?
811:nobodyさん
10/02/13 18:57:21
この4文字NG指定しましょうね。
812:nobodyさん
10/02/13 20:52:55
>>811
ソース教えて君マジウザイ
813:nobodyさん
10/02/13 22:56:57
それもNGに
814:nobodyさん
10/02/14 01:16:41
AJAX禁止したら、その技術に関して何も言えなくなるじゃんね
つーかソース教えろ厨マジうぜー
815:nobodyさん
10/02/14 01:48:51
それもNGに
816:nobodyさん
10/02/14 11:50:09
ソース教えて君がレスをみれなくなるだけだから問題ナッシング
つか自分からNG設定するぐらいなら、はじめからスレにこなければいいのに
817:nobodyさん
10/02/14 15:40:48
それもNGに
818:nobodyさん
10/02/14 15:52:53
↑ばかの一つ覚えのソース教えて君
819:nobodyさん
10/02/14 23:40:57
ソース教えて君
820:804
10/02/15 09:22:24
>>809
やはり普通のカレンダーコントロールでは難しそうですね・・・。
自作コントローラを作る場合、どのようにすればいいのでしょうか。
まだasp.netに触れて日が浅いもので・・・。
>>810
AJAXもいまいち理解できていないので、ピンときてません。
AJAXを使えば実装できるのでしょうか。
821:nobodyさん
10/02/15 12:50:57
>>820
このスレには「回答にはすべてソースを付記しないと回答したことにならない厨」(通称ソース教えろ厨)という馬鹿がいて、
そいつがAJAXという技術を知らなくて馬鹿にされたので、
AJAX使えば何でもできるという印象操作をしているだけなので無視してください。
ソース教えろ厨が、ご迷惑をおかけしておりますが、よろしくお願いいたします。
822:nobodyさん
10/02/15 13:30:32
perlとASP.NETの同居について教えてください。
IIS6.0でASP.NET2.0用のWebアプリを提供しています。
その中でglobal.asaxを使用してフォーム認証を併用した独自の認証とログ採取を行っています。
ここにperl製のパッケージを同居させることになりました(お客様の御意向なのでパッケージの内容は詳しくありません)。
Active Perlで動作するようなのですが、global.asaxとどうすれば同居できるのか分かりません。
例えば、拡張子plにperl.exeを設定するとaspnet_isapi.dllで呼ばれるglobal.asaxが動かないため、直接アクセスできる上にログも取られません。
拡張子に複数のアプリケーションを構成することもできないため、perlの実行とglobal.asaxの実行を両方ともおこなう方法が想像つきません。
最終的には下記の流れを実現したいです。
1.クライアントからperlページのHTTPリクエストを受ける
2.perl.exeでperlページを処理する
3.aspnet_isapi.dllでglobal.asaxを処理する(認証とログを処理)
4.HTTPレスポンスを返す
どのように設定するかどなたかお分かりになりますか。
823:822
10/02/15 13:32:58
すみません、まだperl製のパッケージは入手しておりません。
また、流れの2と3は逆でも構いません。
824:nobodyさん
10/02/15 16:13:12
それたぶん無理じゃないのかな
aspxでperlのほうにリダイレクトして、
perl側でリダイレクトじゃなければエラー吐くみたいな
処理ならできるのかもしれないけど
825:nobodyさん
10/02/15 18:12:02
ASP.NETでフォーム認証は解説サイトもあり簡単にできたのですが
ASPでフォーム認証するにはどうすればいいでしょうか?
参考になるサイトがありましたら教えてください。
826:nobodyさん
10/02/15 21:37:31
質問です、Ajax Control ToolkitのTabContainerコントロールに配置した
テキストボックスに(ロード時やタブの切り替え時に)
フォーカスをセットする方法をおしてください。
通常のPanel上に配置されたテキストボックスには
フォーカスがセットされるのですがTabContainerコントロールに配置した
テキストボックスにフォーカスをあてる事ができずに困っています、
どうか良いご回答をおねがいしますm(__)m
827:nobodyさん
10/02/15 22:00:35
>>825
ASP.NET的なフォーム認証の仕組みは無い
ASPでやるならCookieとSessionとglobal.asa使って自力で同じようなもんを実装するくらいか
828:nobodyさん
10/02/16 08:39:12
>>827
了解です。自力で作成することにします。
829:sage
10/02/16 10:07:20
>>821
AJAXクン、いつも絶好調ですねw
830:nobodyさん
10/02/16 10:10:43
>>804
jQuery使えば簡単だよ
831:nobodyさん
10/02/16 11:49:48
>>829
>>830
お前はもうこなくていいから
832:nobodyさん
10/02/16 12:40:45
そーす君しつこすぎ
833:nobodyさん
10/02/16 13:48:49
showModalDialog()で開いたページでDB登録処理を行い、
正常に終了した場合、このダイアログを閉じたいんだけど
window.close()をどのようにして指定すればいいんでしょう。
834:nobodyさん
10/02/16 20:15:09
>>822
パールの呼び出しはCGI経由なのか?
CGI全部自分で処理するカスタムHTTPハンドラつくって、その中でパール呼び出せばできるような気がする
できるかどうか詳しく検証してないからできないかもしれない
--ここから余談
できても俺ならやりたくない。つかやらない
認証を共通でやりたいなら、パッケージ側に認証の連動機能を要求する
パッケージのログはパッケージの機能で採取してもらう
外部のパッケージ使うならそういう割り切りが必要だと思う
835:nobodyさん
10/02/16 20:33:49
>>834
AJAX君は、無理してレスしないでよろしい
836:834
10/02/16 22:12:28
AJAX君なら
ASP.NET使って普通にやればできるよ
って回答だろう
あれと一緒にされるのは非常に心外だな
837:nobodyさん
10/02/16 23:38:27
>ASP.NET使って普通にやればできるよ
お前のセリフじゃないか
できるのならソースを示せ
838:nobodyさん
10/02/17 02:12:38
>>837
ソース君マジでうぜぇ
839:nobodyさん
10/02/17 10:35:42
AJAX君は今日も絶好調
840:nobodyさん
10/02/18 18:07:25
GridViewについて、質問があります。
DropDownListの値を使用して、GridViewの表示を変えるシステムを作っているのですが。
DropDownListに全件表示の選択を加えたいと、考えています。
この場合、DropDownListの全件表示プロパティのvalueには、なんと書いたら良いのでしょうか?
841:nobodyさん
10/02/18 18:16:51
表示を変えるってのは、1ページの表示件数かな?
としても、GridViewのデータをどうやって作ってるかによるので答えようがないです。
10とか20とかで動いてるなら全件数でもいれとけば。
842:840
10/02/18 18:49:24
すみません、言葉足らずでした。
DropDownListでDBの検索条件を指定して検索、結果をGridViewで表示するシステムです。
DropDownListの中身はDBから引っ張ってくるため、力技だと不都合が出てしまいます。
DBの内容としては、下記のようなものを使用しています。
id / 名前 / 性別 / 血液型 / 出身地
性別、出身地の2つを選んでもらい、検索結果を表示します。
843:nobodyさん
10/02/18 22:00:17
nullの値の条件なしみたいなドロップダウンの項目を追加して
sqlの条件の所 (syussin = @syussin) みたいな所を
( @syussin IS NULL OR syussin = @syussin ) とやったことあったな。
844:nobodyさん
10/02/18 22:59:09
性別も出身地もnot nullだろうから
where 性別 = isnull(@sex,性別) and 出身地 = isnull(@home,出身地) でいい。
全件検索は@sex = null、@home = nullでとれる
845:840
10/02/19 10:54:36
>>841 >>842
お二方のアドバイスを参考に、SQLを改変してみましたが、該当データなしとなります。
SELECT ID, name, sex, blood, hometown FROM Table1 WHERE (@sex IS NULL OR sex = @sex)
と入れても、
SELECT ID, name, sex, blood, hometown FROM Table1 WHERE (@sex = NULL) OR (sex = @sex)
と改変されてしまいます。
そして、sex = nullとして検索すると、該当データなしとなります。
また、
where sex = isnull(@sex,sex)
でも同じ結果でした。
必須という訳でもないので、私にはできないという方向で、検討していこうかと思います。
アドバイスありがとうございました。
846:840
10/02/19 10:56:28
アンカミスってたorz
>>843 >>844
です。
847:nobodyさん
10/02/19 23:45:42
なんでそんなんになるのかは分からないけど、
なら、nullあきらめて、ありえない値にしとけば
@sex = 'both' にしとくとか
848:nobodyさん
10/02/20 02:13:33
SQLの問題じゃないだろ。基本的な処理の流れがわかってない
まず、ドロップダウンに設定する値はなんでもいい。俺なら空文字列設定する
そして、検索するときにその値をチェックする
動的にSQL作ってるなら検索条件変えるだけだし、>>843,844が言うようなSQLを設定してるなら
パラメータにNULLをセットする
DBでいうところのNULLってのは"NULL"って文字列じゃないぞ
849:nobodyさん
10/02/20 05:49:04
パラメータに(C#の)nullって渡せるんだっけ?DBNullじゃなくて
最近LINQばかりでよく覚えてないや
850:nobodyさん
10/02/20 12:55:41
DBで言うところのNULLはC#でいうところのnullではない
DBで言うところのNULLを表すためにDBNullクラスがある
パラメータにNULLをセットするってのは、DBで言うところのNULLをセットしろってことだろ
C#のnullをセットするってことは値をセットしないこととほぼ同義だぜ
851:nobodyさん
10/02/20 17:42:04
ウィザード使わないで、自分で動的にSQLを作ればいいんでない?
GridViewとDropDownListを連動させて検索するとか
型どおりの動作は簡単にできるけど、ちょっと細かく挙動を変化させたりとかできないし。
自分ならDropDownListに各種項目(valueは各種項目のデータのid)と「全件表示」項目(valueは0)を表示させるユーザコントロールを作るな。
で、DataSetで全件のデータを取得して、Selectメソッド(またはLinq)でデータを抽出してGridViewにデータバインドさせるか、
DropDownListの選択具合によってASP.NET側で動的にSQLを生成してクエリを発行するか、
SQLのテーブル値関数でクエリを生成してデータを返す。
852:nobodyさん
10/02/20 20:27:20
頭の悪い回答ですね(クスッ
853:nobodyさん
10/02/20 20:43:38
どこが頭の悪い回答なの?ソース君
854:nobodyさん
10/02/20 22:42:45
>>853
AJAX君にしてはキレの悪い突っ込みですねw
855:nobodyさん
10/02/20 22:58:34
んで、どこが頭の悪い回答なの?
ソースプリーズ
856:nobodyさん
10/02/20 23:07:08
852 名前: nobodyさん [sage] 投稿日: 2010/02/20(土) 20:27:20 ID:???
頭の悪い回答ですね(クスッ
854 名前: nobodyさん [sage] 投稿日: 2010/02/20(土) 22:42:45 ID:???
AJAX君にしてはキレの悪い突っ込みですねw
やっぱり意味ないレスで人を煽るのは、ソースくれ厨か
857:nobodyさん
10/02/21 00:17:19
>>840
ManagementStudioで
SELECT ID, name, sex, blood, hometown FROM Table1 Where sex = sex AND hometown = hometown
を実行してみてよ。
手打ちするのではなく、上のSQLをコピペして実行してね。
858:nobodyさん
10/02/21 00:47:36
文字ならシングルクォーテーションで括ろうぜ AJAX君
859:nobodyさん
10/02/21 04:00:45
ん?where 1 = 1と同じ意味だから全件拾えるって話だろ。
まぁ確かに>>845に対するレスってのが一瞬掴めなくて、
いきなり何言ってるんだとは思ったが。
860:nobodyさん
10/02/21 14:32:13
>>858
>>857のSQLに文字なんてないよw
861:nobodyさん
10/02/21 22:14:43
ソース教えて君大失態の巻
862:nobodyさん
10/02/21 23:29:31
これは意外。
AJAXクンはSQLServer触った事ないのか。
863:nobodyさん
10/02/22 00:09:53
>>862
858 名前: nobodyさん [sage] 投稿日: 2010/02/21(日) 00:47:36 ID:???
文字ならシングルクォーテーションで括ろうぜ AJAX君
864:nobodyさん
10/02/22 00:24:50
>>857
たぶん、こういうのやりたいんでしょ
URLリンク(jsajax.com)
それをコーディングレスでやりたいから、データソースの構成ウィザードで設定する、
SELECTステートメントのクエリの書き方が知りたいということだと思う。
だから、クエリそのものの使い方や回答をしても意味がないと思うよ。
865:nobodyさん
10/02/22 02:03:04
>>862
もう恥の上塗りはやめよう
866:nobodyさん
10/02/22 08:13:02
いまだにNG指定してない人がいるとか・・・
867:840
10/02/22 11:43:20
あれから、いろいろといじってみていたところ
>>843のやりかたで、無事できました。
開始オプションで、最初に作った他のものを開いていたようです
あああああああ死にたいorz
868:nobodyさん
10/02/22 12:57:31
ソースくん涙目
869:nobodyさん
10/02/22 15:19:18
>>868
しつこい
870:nobodyさん
10/02/23 09:54:21
>>869
>>866
871:nobodyさん
10/02/23 10:07:13
>>869
しつこいぞAJAXくん
872:nobodyさん
10/02/25 11:34:40
AJAXクンは多分社会人じゃないと思うけど、社会に出てから苦労しそうな予感。
873:nobodyさん
10/02/26 22:53:35
レガシーASPっていつまでサポートされるんだろう
874:nobodyさん
10/02/26 23:58:18
ビルドが遅いのはなんとかして欲しいな。
Java(Eclipse)と比べてここは劣っていると言わざるを得ない。
875:nobodyさん
10/02/27 02:49:00
いわざるをえないー
876:nobodyさん
10/02/27 02:58:10
DBからSQLでデータを取得して、TEXTファイルをダウンロードするようにしたいのですが。
取得したデータをループでStreamWriterに書き込んでいって、最後にResponse.Write(sw)みたいなやり方で出来ますか?
このやり方だとファイル名はどうやって指定してあげればいいのかわかりません。
初心者です。
877:nobodyさん
10/02/27 03:01:00
TEXTファイルをダウンロードってところを具体的に。
取得したデータというのはDBのデータのこと?TEXTファイルの文字?
ファイル名はテキストファイルのファイル名?
こんなんで分かると思うのかー超能力者じゃないんだぞー
878:nobodyさん
10/02/27 03:11:07
>>876
クライアント側に決めさせればいいだろ
879:nobodyさん
10/02/27 03:14:10
876です。
>>877
最終的に作りたいのがTEXTファイルです。
DBのデータをSQLでselectしてきて、それをTEXTファイルに吐きだしたいんです。
その時にファイル名を指定して吐きだすことになると思うんですが。
とあるサイトでは
Response.AddHeader("Content-Disposition","attachment;filename=ファイル名");
のようにファイル名を指定していたのですが、別のサイトでは
StreamWriter sw = new StreamWriter(ファイル名, false, enc);
のようになっており、StreamWriterとResponse.Writeは一緒に使えないのかなと思いました。
複数行のレコードを書き込むにはStreamWriterが便利だと思ったんですが。
880:nobodyさん
10/02/27 03:16:58
サーバーにテキストファイル一旦作るのかどうかってとこか。
881:876
10/02/27 03:17:46
ちなみに、ダイアログ(開く、保存、キャンセルがあるやつ)からダウンロードするようにしたいです。
882:nobodyさん
10/02/27 03:27:18
頭の悪い回答ですね
883:nobodyさん
10/02/27 03:39:15
>>879
一つ目のファイル名は、ローカルに保存されるファイルのファイル名を指定するものだけど、
2つめのファイル名は、サーバーにテキストファイルを作るときのファイル名。
とあるサイトでの使われた方知らないから分からないけど、いったん作ったファイルから
Response.Writeに書き出すこともできる
884:nobodyさん
10/02/27 03:54:21
>>882
同意せざるを得ない。やっぱこのスレ、レベル低すぎ。
>>879
Response.AddHeader("Content-Disposition","attachment;filename=ファイル名");
この方法でよい。
885:nobodyさん
10/02/27 04:48:16
>>884
いや、主にお前のこと
886:nobodyさん
10/02/27 08:46:00
URLリンク(www.ailight.jp)
887:876
10/02/27 15:38:59
>>886
ここの方法だと、string変数に改行コードを入れつつループさせてファイルを作成していますね。
これを真似してみたらうまくいきました。
StreamWriterを使う方がちょっと面倒なのかな。
ちなみにサンプルでは、Response.BinaryWrite(encoding.GetBytes(tempString))のようにstringの文字列をbyteのように扱っていたのですが、Response.Write(tempString)ではだめなんでしょうか。
888:nobodyさん
10/02/27 16:43:48
それはサンプルがアホなだけ。エンコーディング指定して、Response.Writeが正解
889:nobodyさん
10/02/28 00:29:00
>>887
Response.Writeでだめな理由はそのページにも書いてあるだろ
Response.Writeだとページのエンコーディング指定の影響を受ける
特定の文字コードでダウンロードさせたいなら、>>888がいうように
Response.CharsetなりResponse.ContentEncodingなりを指定して
Response.Writeするのが正解(ただしテキストに限る)
890:876
10/02/28 01:11:31
>>888-889
Response.Writeでも出来ました。
ありがとうございました。
891:nobodyさん
10/03/01 08:34:18
VisualStudio2008standardなんですが
ASP.netのプロジェクトにはWebアプリとWebサイトがあると
聞いたんですがWebアプリしかありませんでした。
Webサイトプロジェクトを作成するにはどうしたらいいでしょうか?
892:nobodyさん
10/03/01 09:27:33
ファイルメニューにありますた^^
893:nobodyさん
10/03/03 10:29:09
>>822
似たような案件でうちで外部会社のperlアプリを突っ込まざるを得ない時は暫定的にこうした
1.perlアプリはASP.NETアプリの下階層のディレクトリに放り込む
2.ディレクトリをWebアプリ化してそこのワイルドカードアプリケーションマップににaspnet_isapi.dllを設定
検証した限りではフォーム認証かけつつperlを動かすことができた
その後perl側で対応してもらったから今はやってない
この場合はフォーム認証だけだったけど、ここ用のglobal.asaxを突っ込めばログも対応できるかも
正しいやり方か見当つかないんだけど、この方法って合ってるんかな
894:nobodyさん
10/03/05 14:35:25
ASP.NETで複数のUpdatePanelを使ってるんですが、
pnl1.Update()イベント中に
pnl1.Visible = false;
や
pnl2.Visible = true;
をしても表示が変更されません。
どのタイミングでどうすれば非表示に出来るのでしょうか
どなたかお願いします。
895:nobodyさん
10/03/05 16:17:30
>894
MSDNを見る限り、UpdatePanelにUpdateイベントなんてないぞ
URLリンク(msdn.microsoft.com)
Updateメソッドならあるが...
Visble=falseってどこにどう書いてるんだ?もうちょっとコード晒せよ
896:nobodyさん
10/03/05 17:34:15
>895
情報足りなくてすみません。
pnl1,pnl2における、
三つのイベント(Init、Load、PreRender)内で
pnl1.Visible = false; や pnl2.Visible = true;
などを記述してみたのですが、
いずれにおいても、初回読み込み時には表示変更が反映されるものの
pnl1.Update();
実行時には、表示変更が反映されず、
初回に非表示になってしまったパネルは、非表示のままです。
Update()発行時に、表示/非表示を切り替えるには、
どうしたらいいのかをご教示ください。
897:nobodyさん
10/03/05 17:50:00
どうしたらいいもなにも、プロパティを設定するだけで普通に動くけど。
898:nobodyさん
10/03/05 20:13:03
UpdatePanelの外側を変更したいという阿呆なこと考えているように見えるんだけど違うよな?
899:nobodyさん
10/03/06 13:03:47 w7XPkCV9
ここに誘導されてきました。
ASP.NET3.5 + VS2008 (VB.NET)です。
ListViewで作成した列タイトルを動的に設定したいのですが
どのようにしたらよいでしょうか?
WebFormの定義は下記のとおりです。(レイアウトの部分を抜粋)
<asp:ListView ID="ListView1" runat="server">
<LayoutTemplate>
<table ID="itemPlaceholderContainer" runat="server" border="1">
<tr id="Tr2" runat="server"><th id="Th1" runat="server">
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</th></tr>
<tr ID="itemPlaceholder" runat="server"></tr>
</table>
</LayoutTemplate>
ListView1の中のLabel1に列タイトルをセットすることで動的に変更しようとしています。
プログラムの部分は下記のとおりです。
Dim lblth1 As Label = CType(ListView1.FindControl("Label1"), Label)
lblth1.Text = "項目1"
これを実行すると、"項目1"を代入するところでエラーになります。
「オブジェクトインスタンスの作成にはnewキーワードを使用します」
どのように記述したらよいのでしょうか?
この方法でなくても、ListViewで列タイトルが動的に変更できればOKです。
900:nobodyさん
10/03/06 15:27:42
AJAX使えば普通に変更出来るじゃん。特に悩むところは無いよ。
901:nobodyさん
10/03/06 16:36:01
>>899
何のイベントで設定してるんだ?
まさかPage_Loadじゃないだろうな。
ListViewのDataBoundなりでやれば動くぞ。
902:nobodyさん
10/03/06 16:49:34
>>899
まず、エラーメッセージを正確にかけ。おそらく、
オブジェクト参照がオブジェクト インスタンスに設定されていません
のはずだ
データソースが指定されていないから、テンプレートに指定した内容が
実際にまだ作成されていないからエラーになってる
ちゃんとしたDataSourceIDを指定するなり、DataSource指定してDataBindしてから
やればちゃんと動くはず
>>901
そもそもDataBound発生してないと思うぞ
ちなみに俺が試した範囲ではデータソースをちゃんとすれば
Page_Loadでも動いた
903:nobodyさん
10/03/06 17:28:43 w7XPkCV9
>>902
Page_Loadに記載しています。
エラーメッセージは、最初に記載したエラーの上にご指摘の
「オブジェクト参照がオブジェクト インスタンスに設定されていません 」が
表示されていました。
Dim lblth1 As Label = CType(ListView1.FindControl("Label1"), Label)
lblth1.Text = "項目1"
上記を ListView1.DataBind() の下に配置したところ、正常に動作しました。
ありがとうございました。
ちなみに、この方法の他に LayoutTemplate をオーバーライドする方法も
あるようですが、どちらの方法が望ましいでしょうか?
904:nobodyさん
10/03/06 17:39:39
>>901
Listviewは、GridViewのように「列の編集」が
表示されませんが、どのように定義したら
よいのでしょうか?
また、Webフォームのソース画面で、
GridViewと同じように
<asp:ListView ID="ListView1" runat="server">
<Columns>
<asp:BoundField HeaderText="項目1” />
</Columns>
</asp:ListView>
と記述してみましたが、記述した時点で警告がでました。
「検証 (XHTML 1.0 Transitional): 要素 'columns' はサポートされていません。」
「要素 'BoundField' は不明な要素です。」
これを無視して実行するとエラーが発生しました。
「パーサー エラー メッセージ: 型 'System.Web.UI.WebControls.ListView' には 'Columns' というパブリック プロパティは含まれていません。」
905:nobodyさん
10/03/07 07:50:05
全部ここで聞くつもりか
906:nobodyさん
10/03/07 12:34:05
asp.netのマスタページ機能の質問です。
ContentPlaceHolderは、ToolboxのStarndard区分から選択することでコードを挿入できるのですが、
ContentPlaceHolderの中身を記述する以下のような「Content」コードをGUI操作で
挿入する方法がわかりません。
仕方なく、コピペでコードを入れているのですが、GUI操作でお手軽に挿入する
方法はありますか?
<asp:Content ID="Content1" ContentPlaceHolderID="aaaaa" runat="server">
</asp:Content>
環境はVisual Studio 2010 Ultimate RCですが、VS2008でもやり方がわかりませんでした。
907:nobodyさん
10/03/07 15:34:46
>>904
ListViewで何が出来るか、何をするものか勘違いしてる。
ListViewでは、何でも出来るけど、そのかわり自分で全部やらなきゃいけない。
908:899
10/03/07 16:52:11
>>907
元々、>>899のようなことがしたくてListviewでBoundFieldみたいなもの
ないかなと思って本やネットで探していたのですが、どうもListviewには
BoudnFiledは無さそうでした。
ところが、>>901さんが「ListViewのDataBoundなりでやれば動くぞ」と
言われたので尋ねた次第です。
909:901
10/03/07 17:34:54
>>908
何を言っているのか意味が分からん。
>>899で示されたエラーから推測できるのは、ListView1.FindControl("Label1")がnullってことだった。
で、原因は>>902が言うようにDataBoundイベントが発生していない
(=まだLabel1が作成されていない)段階で、FindContolしているからだ。
ListViewのDataBoundイベント発生後ならばLabel1は存在する
→したがってFindControlでラベルオブジェクトが取得できる
→したがってラベルオブジェクトのTextプロパティを動的に設定可能ということだ。
(もちろんDataSourceがnullでない場合に限る)
誰もGridViewと同様にBoundFieldが設定可能などと言っていない。
910:899
10/03/07 18:43:48
>>909
イベントのことだったのですね。
ありがとうございました。
911:nobodyさん
10/03/08 10:00:40
やっぱり、おまいらは、客に納品するシステムを
visual web developer express 2008 作ったりするの???
912:nobodyさん
10/03/08 11:03:26
>>911
短期の助っ人(契約とか派遣)や、コードを色つきで見れれば良い程度のテスト要員には使ってもらうことある
でも、短期でも主要な部分をやってもらう人や、テスト要員でも開発部員なら相応のEditionを渡す(開発部員は自分でライセンス持ってる場合多いけど)
ケースバイケースだけど、常時10ライセンスくらいは余らしてるからExpressを使わないパターンの方が多いな
913:nobodyさん
10/03/08 14:18:32
expressでも作ってしまえば同じだろ。
お客にソース渡してお客がメンテするのならライセンスはお客側の話だ。
914:nobodyさん
10/03/08 15:40:12
>>913
質問の意図から論点ズレまくってるよ
確かに作ってしまえば同じだけど、開発ツールの選択は作る過程に影響する話でしょ
お客さんがどうこうって話は元質問に全く無い要素だと思うけどなんで話広げてるの?
915:nobodyさん
10/03/08 18:31:13
>>914
質問に、「客に納品する」って前提条件があるのに
元質問に全くない要素ってか
つか、>911の質問内容でその意図を正確に読み取るとは
ここはエスパーの多いスレですね
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4952日前に更新/322 KB
担当:undef