【質問】ASP.NETスレ Part7【雑談】
ASP.NETとは、マイクロソフトが提供するWeb アプリケーションと XML Web サービスを構築するための Microsoft .NET Frameworkの一連のテクノロジの一つです。 技術の移り変わりの早い分野ですので、みんなで質問、相談しつつ、より理解を深めていきましょう。 ●ASP.NET関連サイト マイクロソフトASP.NETデベロッパーセンター http://msdn.microsoft.com/ja-jp/asp.net/default.aspx ASP.NETオフィシャル(英語) http://www.asp.net/ VisualStudioホームページ http://www.microsoft.com/japan/msdn/vstudio/ SQLServerホーム http://www.microsoft.com/japan/sqlserver/2005/default.mspx IISオフィシャル(英語) http://www.iis.net/ ASP.NETにAJAX技術を取り入れるASP>NET AJAX(英語) http://www.asp.net/ajax/ ASP.NETにMVCアーキテクチャを取り入れるASP.NET MVC(英語) http://www.asp.net/mvc/ ASP.NETでのお役立ちの定番サイト http://www.atmarkit.co.jp/channel/aspnet/aspnet.html ウェブプログラミングにASP.NETってどうなんn もしかして… AJAX ControlKit の ReorderList ってObjectDataSource だと使えないのでしょうか? いつのまにこのスレ復活してたんだ >>3 サーバがWindowsならあり。それ以外ならなし Monoはよくわからん。趣味でやるなら好きにすればいい 初回起動はまあ遅いと思うことはあるかな サーバ再起動とかそんなにするもんではないからそれほど気にはならんが Form認証をどう実装したらいいのか理解できん。 もう、ゲボ吐きそう・・・。 実装ってのは、認証部分を自分でやりたいってことか? もうちょっと詳しくやりたいことと解らんとこ書いてみ >>14 声をかけてくれる人がいると思ってなかったです。ありがとうございます(泣) フォーム認証でよく解説されている方法は以下のようなやり方と認識しております。 ・aspnet_regsql.exeでデータベース構築 ・ASP.NET構成ツールでロールやユーザ情報の登録 ・web.configで適宜ディレクトリやファイルにアクセス権限を与える でも実際のアプリケーションでは、例えば以下の様な要件があったりするかと思います。 ・既存の会員DBがあり、ユーザ情報はそちらから持ってきたい →[aspnet_Users].[UserId]と[会員DB].[会員テーブル].[会員ID]の連関テーブルを持つ? ・既存の会員DBからの移行でログインIDやパスワードをそのまま引継ぎたい →[aspnet_Membership]に移し替えたりせず、カスタムメンバシッププロバイダーを利用する? ・ユーザ情報はCSVなどで一括で流し込みたい ・あるロールのユーザは配下に複数のユーザを持っており、配下のユーザの削除・変更・新規登録などができる 特に知りたいのは最初のような場合に、どのようなデータベース設計をするかということです。 「そんなもん詳細な要件次第じゃアホ」と言われるかもしれません。 「オマエは根本的な部分が分かってない」と言われるかもしれません。 初歩的な質問だということは承知の上で、参考になりそうなサイトや 調べる手がかりとなりそうなキーワードでも良いので教えて頂けますと幸いです。 >>15 俺の記憶をもとに説明すると 1.ユーザ管理をDBも含めてASP.NET標準の方法でやる 2.ユーザ管理は独自DBでやって、認証はASP.NET標準でやる 3.ユーザ管理も認証も独自でやる このどれを選ぶかで変わってくる ログイン情報を独自DBやCSVファイルで持ちたいなら2か3だが 2ならカスタムメンバシッププロパイダ作る 3ならPostされたIDとパスワードを自前でチェックして認証クッキー発行する >>16 回答ありがとうございます。 追加で質問させて貰おうかと色々書き綴ったのですが、支離滅裂で見当違いなことばかりになってしまったので、 頂いたコメントを参考に今しばらく自分で調べてみたいと思います。 認証の部分についてはmsdnくらいしか情報が出てこないようですが、 ここの設計についてはあまり悩ましい所ではないんでしょうね・・・。 独自で認証するロジック組みたいっていうなら、その部分はASP.NET直接関係ないからな 初期のASP.NETでのフォーム認証は、>>16 の3.しかなかったんだ その時代の解説書の抜粋がMSDNにあるな http://msdn.microsoft.com/ja-jp/library/dd297831 この本と、プログラミングMicrosoft ASP.NET 3.5 ぐらいあれば、大概の事は載ってるぞ >>18 レスありがとうございます。 「プログラミングMicrosoft ASP.NET 3.5」は本屋で見かけてもあまりにゴツいんで敬遠してたのですが、 目次を拝見するにかなりの部分を網羅して良さそうですね。4.0より3.5の方が良いですか? 識者の方々は新規技術や深い話に興味が行きがちなので、web上で調べていてもどんどん分からない話に 誘われてしまうんですよね。 赤間さんのような人が教育の部分をトータルコーディネートしてくれたらなぁ、などと思う今日この頃です。。。 このスレはASP.net MVCの話もOK? ASP.net MVCスレあるけど異常に過疎スレになってしまっている。 ASP.NET MVC http://kohada.2ch.net/test/read.cgi/php/1331013877/ >>19 赤間さんの本はわかりやすいよな C#の本とか、MVCの本とか書いてほしい。 >>19 4.0のやつは読んでないから評価できない ただ、3.5から4.0だとASP.NETとしてはそんな大きな変更はない気がする 人来ないですね。 ASP.NETへの関心が低いのか、MSDNが充実してるからこっちに来る必要がないのか。 >>8 馬鹿でかいViewState投げさせておいて重いとか言ってないよな・・・。 実行速度はスクリプト言語より断然速いでしょ。(コンパイル時間を除く) MVCの質問をして良いのかな? 初歩的な質問ですまないのだが ASP.netMVCって.netFrameworkのバージョンに依存したりしますか? VS2008SP1を使っていて、ASP.netMVCの勉強をしたいのだけど どのバージョンのMVCをインストールして良いのか分からないので 教えて頂けると嬉しい。 >>27 です ごめんなさい。 ググったら見つかりました。 3.5SP1はASP.netMVC2までの対応なのですね 質問取り下げます。 ttp://photozou.jp/photo/show/2819159/153010030 ( ´∀`)ノ ASP.NET + jQueryで、ボタン onClientLickでjQueryの関数を呼ぶにはどうすれば いいんですか? それとも普通にjQueryのclickイベントハンドらに登録して、Postbackも一緒に 適切に処理されますか? >30 普通にクライアントスクリプト書いとけばいいだけじゃないの? イベントハンドラは、ボタンコントロールのIDとらないとダメなんじゃないかな それかクラスで特定するか ためしてないから実験して結果報告してくれ ボタン押したときのOnClientClickでConfirm出したいんですが、その際の メッセージはApp_Globalresourceに入っているものを引っ張ってきたいんです。 OnClientClick='return confirm("<%$ Resources:MsgResources, E0001 %>\");' こう書いても、クリックしたら<・・・>の部分がそのまま表示されるんですが、 どうすればリソースに定義したメッセージを出せるでしょうか? @PageにCulture="auto" UICulture="auto"は入れています >>32 プロパティ値の一部だけをリソース式にするのはできないっぽい Page_Loadあたりで Button1.OnClientClick = "return confirm('" & GetGlobalResourceObject("MsgResources", "E0001") & "');" ってやるとか <head>あたりに <script type="text/javascript"> var E0001 = '<%=GetGlobalResourceObject("MsgResources", "E0001") %>'; </script> みたいなjavascript書いといて、OnClientClick="return confirm(E0001);"にするとか 非同期処理について教えて下さい。 UpdatePanelによる非同期処理後に処理について、HPや本などには以下で出来ると書いてありますが、 実際やってみるとalert('非同期終了')を2回通ります。 さらに、連続して非同期処理をすると、4回、6回・・・と増えていきます。 このendRequest関数?はどのタイミングで通るのでしょうか? <script> function pageLoad(){ var manager = Sys.WebForms.PageRequestManager.getInstance(); manager.add_endRequest(function (sender, args) { alert('非同期終了'); }); } </script> >>34 それpageLoadが2回実行されてるんじゃね UpdatePanelの非同期呼び出しでもpageLoadは実行されたはず >>35 pageLoadを消したら一回になりました。教えて頂き有り難う御座いました。 ASP.NETでファイルをアップロード(DBに保存)したいんですが、ファイルサイズはどのくらいまでOKですか? 1ギガとか行けたらうれしいんですが。 全く同じ操作でリダイレクトしたにもかかわらず、IEに履歴が残らない場合があり、history.back()が効かず困っています。前画面で検索条件を設定し、次画面で結果を表示します。検索結果の量が多いときの方が発生しやすいです。こういうものなのでしょうか? まったく同じ条件なら同じ結果になります。違う結果になるなら、違う条件があります 操作が同じ事は条件が同じ事ではありません まずは状況が再現するミニマムコード作ってみては IEで履歴が残らないのは表示が完了する前に次の画面に遷移してるからだな。 JavaScriptで表示が終わるまで操作できないようにすれば? >>41 『表示が終わる前になにかしらの操作をすると履歴が残らない』んですか。。。表示完了までは操作不可に出来るか検討します。有難う御座いました。本当に助かります。 ASP.NETで作ったページをFirefoxで見るとLinkButtonが全然反応しないんです が、M$のページみても回避策が「LinkButton使うな」としか書いていません。 aタグのhrefに href="Javascript:__doPostBack('ctl00$ms_body$LinkButton1','')" と書かれていますが、具体的にこれのどこが悪くて __doPostBack() が呼べて いないんでしょうか? >>43 根本的にとは、どういう意味でしょうか?ヒントがあれば教えてください。 まだ解決出来ていません( ; ; ) >>45 俺も根本的に何かが間違ってるとは思うが、それ以前に それASP.NETの話なのか? >>44 MSのページに回避策が書いてあったなら、そこに原因も書いてあると思うんだが どこにその回避策が載ってたんだ? linkbuttonで trはさむとか そういうすごいことしてたり。 IEだと動くし ASP.NET で iPhoneがのブラウザ情報が正しくiPhoneと判定されないんですが、 誰か原因か解決方法知ってたら教えてください。 iPhoneでアクセスして Request.Browser.id を見ると、 場合によって何故か "safari3to4" だったり "mozilla" だったりして、 "IPhone" になりません。 "mozilla" とみなされると、 デフォルトの browserファイルで cookies=false に設定されているので、 cookie が使えなくなってしまいます。 とりあえず、refID="mozilla"をアプリ側のbrowserファイルで上書きして凌いでますが、 これだとiPhone以外の mozilla 全てに影響を及ぼしてしまいます。 >>49 ブラウザのUAみて判断してるだけだから、その正しく判断されてないUAを調べないと何とも言えんが 解決方法は自分でブラウザ定義情報書けば良い ◆じゃあのさん来た◆ 180:以下、名無しにかわりましてVIPがお送りします[] 2013/03/25(月) 21:38:20.88 ID:Ve4zDpxT0 おうwwwおまいらwww 俺見参wwwwさあ、今日はなんの話題にすっかなあwww タイムリーなアレにすっかwwww --- 以下スレ情報 --- 高岡さんがフジ韓流ゴリ押し批判したら干されたのでウジテレビ凸 http://hayabusa.2ch.net/test/read.cgi/news4vip/1364200789/ Default.aspxって使わない場合は削除していいのでしょうか? ┌────┐┌─────────────────┐ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ │ ││ │ └────┘└─────────────────┘ ASP.NETの質問ではないかもしれませんが こんな感じで、左側にメニューのとしてボタンが並んでいるページを作りたいんですが、 テーブルレイアウトって今だとあまり使わないんですよね? その場合、どんな風にやってこういう配置をすればいいのでしょうか >>55 HTMLとCSSを勉強してください ASP.NET直接関係ないです >>56 ありがとうございました。 divをネストするんですね 緊急告知 ◆春の大じゃあのさん祭◆ 3月31日(日) 21時 開演 特別ゲストあり --- 以下スレ情報 --- 高岡さんがフジ韓流ゴリ押し批判したら干されたのでウジテレビ凸 http://hayabusa.2ch.net/test/read.cgi/news4vip/1364698730/ 先ほど勉強がてらvisualstdio2010でasp.netのサンプルを動かしてみたのですが(新規作成→webサイト→ASP.NET webサイト) アカウントの新規作成をしたときのアカウント情報はどこに保存されるのでしょうか・・・ それと初心者にお勧めのサイトでもあれば教えていただけると嬉しいです >>59 VS2010のサンプルサイトがどうなってるかは知らんが、おそらくApp_Dateフォルダ そこに.mdfファイルがあると思うが、それがSQLServerのデータファイル そのへんの設定はWeb.configファイルに書いてある お勧めサイトは>>1 でも見とけ うお App_Dateは、App_Dataの間違いね >>61 早速のレスありがとうございます appdata内にaspnetdb.mdfがありさらにいくつかファイルがありました 軽く見た感じでは見つけられなかったので後日調べながら探していきたいと思います ありがとうございました chartコントロールってCSSで幅とか指定できないんですか? >>63 html見ると、グラフが書かれてるimgタグにstyle属性で指定されてるな まあつまりCSSで指定されると言えなくはないが、多分クライアント側で指定したいって話だろうな 属性指定はstyle要素指定や外部ファイルより優先されるっぽいから、これ消さないと無理っぽい StyleプロパティとかControlStyleプロパティとかいじって見たけど、簡単には出来なさそう 諦めてサーバ側でサイズ決めて送るか、クライアント側のJavaScriptかなんかでどうにかできるんじゃね 気合があればchartコントロール自作でも良いけど >>64 やっぱりアイツのせいですか 自分でもいろいろ試してみましたができなかったです JavaScriptで出来るか試してみて、無理そうならサーバ側でサイズ指定するようにします ありがとうございます >>65 Chartコントロールを継承して、Renderメソッド書き換えて自分でimgタグ書けば出来るはず と言う事で試した ImageStorageModeをUseImageLocationにした上で、MyBase.Render呼ばんと画像ファイルが生成されないっぽい ダミーのwriter用意して元のRander呼んで、自分でimgタグ出力 とりあえず属性はCssClassだけ出力してみた Public Class NonStyleChart Inherits System.Web.UI.DataVisualization.Charting.Chart Protected Overrides Sub Render(writer As HtmlTextWriter) Dim dummyWriter As New HtmlTextWriter(New System.IO.StringWriter) MyBase.Render(dummyWriter) writer.WriteBeginTag("img") writer.WriteAttribute("class", Me.CssClass) writer.WriteAttribute("src", Me.CurrentImageLocation) writer.Write(HtmlTextWriter.SelfClosingTagEnd) End Sub End Class とりあえずこれで動いてるっぽい >>66 遅くなりましたが できました! もうちょっと融通利いてくれると使いやすいのに ありがとうございました。 ASP.NETって明らかにフォームアプリの開発より難易度も高いし、必須知識の範囲も広いしで、 要求される水準は高いと思うんだけど、求人では評価が低いような気がする なんでなん? page以外のクラスからHttpContext等を介してpageの参照を得ることってできますか? 参照を渡す以外の方法で参照が得られれば何でも良いのですが・・ 探した限り、HttpContextから取れそうで取れないんですよね・・・ >>70 何がやりたいのかわからんが、参照ってインスタンスへの参照か? どっからどのタイミングでその参照が欲しいんだ? なぜ参照を渡すのはダメなんだ?と言うかホントに参照が必要なのか? HttpContextが取れてるならページを生成するのに必要な情報はすべてある筈なんだが HttpContext.CurrentHandlerがPageにキャスト出来たような >>71 修正範囲を狭める意図で妙なことをしなければならなくて・・ >>72 無事参照を得ることができました。助かりました。 ありがとうございました。 asmxのWebサービスなんですが、 ファイル名.asmx/メソッド名/ではなく、 ファイル名.asmx?webmethod="メソッド名"でwebmethodを実行できるようにしたいのですが やり方わかる人いますか? だよなー…コード上で出来るのか?って凄く不思議に思ってたんだが… ASP.NETはIISと密接に結びついてる。といかほとんど一体だから コードで出来ると言えばコードで出来るわけだが Global.asaxに Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs) Dim context = HttpContext.Current Dim method = context.Request.QueryString("webmethod") If method Is Nothing Then Exit Sub context.RewritePath(context.Request.FilePath & "/" & method) End Sub これだけでとりあえず動くだろ まちがってもこのまま本番サイトで使ったりするなよ Monoだったりしたら知らん どでかいCSVファイルを読み込んでレポート(多分最終的にはPDF)に出力したいんですが CSVがサーバのメモリを食い尽くさないように DataSetでは無くて、DataReaderをデータソースとして使いたいです(最悪の場合サーバさえ無事ならブラウザはぶっ飛んでもいい) ・・・が、CSVをDataReaderにセットする方法がまるでわからないです レポート出力もまだやり方わからないんですが、 それ以前にCSVをDataReaderとして、データソースにする方法もわからないです CSVにSQL ServerみたいにDataConnectrionを使って読み込む方法無いですか? >>78 どんだけのCSV読む気かしらんが、最終のPDF作る段階でどっちにしろメモリ食うんじゃないかと思うが DataReaderはDB用。CSVはテキストファイル 普通はファイル読むのはそれ用のクラス使うもんだが テキストファイルをDBとして使えるDBエンジン(ドライバ)もあるから、どうしてもってならそれ使うしか >>79 ありがとうございます。 新JET出てたんですね メモリないで完結するのは、もう作ってあるので どでかい本物データが来て耐えられるようなら多分そちらで済ませると思います >>80 多分聞いてる感じだと100Mくらいのサイズです PDFを作るときにDataReaderなら、相手側のブラウザにだらだら流してくれるんじゃ無いかと期待はしたいのですが・・ codePlexと言うところにあるみたいなので ライセンスによってはそちらも検討してみます 普通、PDFとか、作ってからクライアントに渡すんだぜ サーバ側の読込と、クライアントの読込は別の話だぜ DataReader使ったからって、サーバがクライアントにだらだらデータ流すとか無いんだが CSVの出力なら、一行ずつだらだらとレスポンスを返すことはあっても、PDFは無茶のような・・・。 その技術あったら質問なんてしないだろうし。 妙な仕様の実現のために糞コード書くくらいなら、メモリをドカンと積んで逃げるべし。 最終的なPDFのサイズが解らんが 100MのCSV読んでPDF作るぐらいなら俺なら普通に処理するが 頻度と多重度にもよるけど あとCSVの読込にJETなりACEなり使うと、余計なオーバーヘッドでメモリ余分に使うかもしれんぞ デプロイについて教えてください。 VisualStudioを使用せずに、ソースコードをビルドしてデプロイしたいと思ってます。 MSBuildを使用して実施するやり方をしらべているとネット上で情報をみつけることができたのですが 以下の場所でプロジェクトファイルを指定する箇所で、プロジェクトファイルを 指定しようにも、私の環境ではslnファイルあってもprojファイルはありませんでした。 projファイルは自分で作成しないといけないものなのでしょうか? --- <Target Name="Publish"> <MSBuild Projects="$(ProjectFolder)PublishSampleProject/PublishSampleProject.vbproj" Targets="ResolveReferences;_CopyWebApplication" Properties="Configuration=Release; WebProjectOutputDir=$(OutputFolder)publish/; OutDir=$(OutputFolder)build/"/> </Target> --- 開発環境は .NET 2.0でC#を使ったものになります。 すみませんが、ご教授おねがいします。 >>85 ASP.NETのサイトコンパイルしたいなら http://msdn.microsoft.com/ja-jp/library/bb398860 (v=vs.100).aspx ここ見て考えて つか無償版あるんだからVSつかえよ >86 すみません、自動でビルド&デプロイしたいのですが、無償版のVSにある ものでコマンドラインから実行できるのでしょうか? ユーザーコントロールの中でMultiViewを使うと変なことが起きてます。 Test.ascx の中に MultiView をおいて、その中に View を2つくらい作って a = LoadControl("Test.ascx") b = LoadControl("Test.ascx") c = LoadControl("Test.ascx") てな感じで動的に複数のユーザーコントロールを生成。 bの中でMultiViewを切り替えるとaのMultiViewが変更されてしまいます。 cの中でも同じです。 それぞれユーザーコントロールの中にはラベルやテキストもありますが それらはちゃんと独立して動作しますが、MultiView だけ違うやつを参照してしまうみたいなのです。 同じような方おられますか。 自己解決しました Controls.Add(〜 する前に先にMultiViewを操作すると、上記のような挙動になるみたいでした。 Controls.Add の後にMultiView操作すれば大丈夫になりました。 何かおかしな事しない限りそんな事にはならないと思うが bの中でMultiViewを切り替えって、どうやってやったんだ? 気になるしミニマムコード張ってくれ 軽く検証してみたが、そんな事にはならないなぁ それより、VS2012のEXPRESSが、ユーザーフォームの型を認識しないのが気になったぜ VB.net visual studio2012 で WEBページ作成 で System.Web.UI.WebControls.GridViewをカスタマイズしたクラス作ったけれど Public Class MstGridView Inherits Global.System.Web.UI.WebControls.GridView Public Sub New() Me.AllowSorting = True Me.AllowPaging = True Me.PageSize = 10 Me.PagerSettings.Position = PagerPosition.TopAndBottom Me.PagerStyle.HorizontalAlign = HorizontalAlign.Center Me.ShowHeader = True Me.AutoGenerateColumns = False End Sub Protected Overrides Sub OnPageIndexChanging(e As GridViewPageEventArgs) Me.PageIndex = e.NewPageIndex End Sub End Class xxx.aspx.designer.vb で <asp:GridView ID="gv"... /> のところをどう書き換えるのかわからない・・・ >>94 @Registerディレクティブに指定した内容 つかVSならポトペタ出来るようになってないか Glimpse良い。 Entity Framework使ってるなら、チョー簡単にSQLを見られるし 開発サーバでは良くOnにして確認してるよ。 http://getglimpse.com/ <asp:FileUpload のタグを使用した時に 画面の検索条件がPageクラスで取得できなくなります。 「Request.form」で値を取得するしか無いのでしょうか。。 javascriptで下記のようにしてみようとも思っています。。 document.forms[0].encoding="application/x-www-form-urlencoded"; >>98 画面の検索条件ってのは具体的に何を指してるんだ? ミニマムコード作って張ってみて あとURLエンコードでファイルアップロードすると上手くいかなかったような ASP.net始めたばかりの初心者です ログイン画面を作ってますが標準の構成画面からユーザー追加したりパスワード設定したりしてますが これはSQL Server EXPRESS限定みたいです。他に移すツールもあるみたいですが 連携とるのが難しくなりそうで出切れば標準の使わずにXMLとかで簡単に管理したいんです。 ユーザー情報読み込むだけなら簡単そうですがロールごとにページ管理したりするのがよくわかりません 標準のASPNETDBでやってるページ管理がXMLで出来るサンプル載ってるサイトとかしりませんか? 認証はフォーム認証でやるつもりです >>101 ありがとうございます たぶん、やりたい事がこれでできそうです まだ不勉強なので難しそうですけど なんとか応用できるように勉強してみます その記事古いな メンバーシッププロパイダ自作するのが正攻法だと思うが つかそのぐらい誰か作ってるだろうから探せば見つかるんじゃないかな http://technet.microsoft.com/ja-jp/library/ff454112.aspx こんなのとかあったし 最近ならASP.NET Identityってのもあるけど、これは主流になるかなぁ? SqlDataSourseを貼り付けてグリッドコントロールに表示は出来ましたが それをExcelに出力したらなぜか中身はhtmlでした ちゃんとしたExcelに出来ないでしょいか? csvファイルでもいいのでサンプルありませか? 教えてください ちなみに参考したとこ ttp://blog.enjoitech.jp/article/139 Excelに出力ってのは何をどうしたんだ csv出力するだけならサンプルはググれば出てくると思うが まずサーバサイドとクライアントサイドの区別できてる? グリッド表示できてるならEXCELでWebクエリーでもつかってれば良いんじゃないの? サーバーであるソフトが動いている 遠隔パソコンからアクセスしてデータベースのデータを参照する ここまでは問題なし このデータを遠隔パソコンにExcelで保存したり 逆にデータ変更して戻したい >>107 それASP.NETとかいらんだろ クライアント(遠隔パソコン)から直接データベースみて更新しろよ EXCELで外部データの機能で出来るから、どっかエクセルのスレ言って聞いて 上に書いたのは単なる1機能であって 大前提としてインターネット経由でIEで操作したいというのが客からの要望あって ASP.netはほぼ確定です。他の選択肢もあるだろうけどマイクロソフトが 一番初心者には楽かなぁって初心者考え 2ちゃんねるで無償でサポートしてもらって 客からはぼったくる 楽な商売ですなクズ人間 むしろぼったくられる側ですよ システムなんて簡単に組めると思ってる客ばかり 予算や期間がないからこういうことろで聞かないと 時間がたりない。そういう厳しい現実 >>103 Membershipは難解だったから使わなかったけど ASP.NET Identityに変わっていた。 これも流行らずに終わると思う Membershipと同様、 MySQLとかの他のDBで使えないベンダーロックインな機能なんじゃないかな >>112 SQLServerに限定はされないようだけど。 まあ、ASP.NET使っていてベンダーロックインを懸念するのはナンセンスじゃないかな(笑) Social Providerとかイマドキの機能があるし、まあまあ期待できると思うよ。 >>113 MySQL環境で使ったこともない人に言われてもなあ MySQLでMembershipは簡単には使えなかった web.configを変えるだけでは動かない 調べるのもめんどうになってメンバー管理は自分で作った。 >ASP.NET使っていてベンダーロックインを懸念するのはナンセンスじゃないかな(笑) ライセンスは、IISとSQL Serverのライセンスがあるが、 SQL Serverへのロックインを避ければライセンスを安く抑えられる SQL Expressではレプリケーション使えないし、使えるバージョンはお高い。 開発生産性で、ASP.netの代替となるものはないが、 DBの代替はあるということ >>115 SQL Server限定ではないというのはIdentityについての言及なんですが。Tutorialも見たことない人が想像でロックインなんてねぇ・・。 技術的なロックインは無さそうという話から、運用環境のライセンス料に話題をすり替えられても・・。 開発環境として優れているのは仰るとおり。 加えてSQLServerのDeveloper Editionは激安です。 >>116 すり替えって何言ってるんだ ベンダーロックインで一番困るのはライセンスだろ >SQLServerのDeveloper Editionは激安です。 それは本番の環境で使うの禁止されてるだろ 話にならない 技術の議論に本番も糞もねーよ 商売したなら勝手にやってな 無償サポート代わりに技術系の掲示板使うなクズ人間 >>117 最後の開発環境の話からDeveloper Editionの話に繋がるのに、本番禁止を指摘してくるとか、アンタやばいんじゃね?? それで仕事成り立ってるの?(笑) >>118 最後の行、誰にレスしてるんだ? >>119 頭だいじょうぶか? Developer Editionが安いなんて当たり前だわ 本番環境のサーバのライセンスを自分の金で買ったことも無いんだろうな >>120 開発環境で使う分には安いし、優れてるね、って同調してるのに・・・。 SQL ServerのStandard Editionはコアライセンスで120万弱だし、 人足かけて開発する会社としては安い・高いは判断によるだろうね。 まあ自分の金で買うことはないよ(笑) 最近はAWSのRDSはじめPaaSが台頭してきて、初期投資の考え方も 変わってきちゃったけどね。 "高い"SQLServerの替わりに"タダ"のMySQL使える僕スゴイでしょ、 なんて思ってるんじゃない? 個人的にはOracleにロックインされる方がこえーよ(笑) >>115 web.configを変えるだけで使えなかったらベンダーロックインですか 調べるのもめんどうって この程度調べるのが面倒ってまさか仕事でASP.NETのシステム開発してるんじゃないよね >>123 めんどくさいやつだな 調べてMySQLでもMembershipを実現するメリットと 自分でコード書く方法を検討して決めてんだよ Membershipは複雑なのに柔軟性がない ちょっと使ってみればわかるだろ 案の定、Membership出来が悪すぎてすぐ廃止された 俺の書いたメンバー管理はASP.net vNextになっても使えるから 結果的に正解だった MSが用意したライブラリとかDBとかをすべて使うことを前提に やってるおまえのほうがよっぽど素人 だったら最初からそう言えば良いのに どうみても後出しの言い訳にしかみえない IdentityはSQLServer限定とか妄言言って、 それに対するツッコミにはスルーし、 挙句の果てにオレオレライブラリ最強とかマジで笑いを誘ってるな(笑) githubにでも早くアップしてくれよ。 SQL Server環境でしか使えない奴らが上から目線とはね おまえらのが笑える ここ数日の書き込みで、どこにSQLServer以外使えないと書いている人がいるんだろう。 「MembershipはSQLServer限定だからクソ、Identityも同様だろうきっと。ちなみにオレオレライブラリはMySQLで使えるゼ」と言う人に対して、 ど〜せASP.NET使うんだしSQLServerでもよかろうと言ったら、発狂しだしただけでしょ。 >>129 レスの内容見てれば書かなくてもわかる >>123 みたいなやつな 「調べるのもめんどう」と書いたのを文字通りにしか理解できないバカ OSS使って開発してる奴なら、サードパーティの製品と 組み合わせて開発するほうが調べることも多いうえに バグにあたることも多くて、大変なのは誰でも知ってる。 それをやったことがないから>>123 のようなレスが出てくる。 本当に調べるのも面倒なら他社のDB使って開発したりしない 全部MSので揃えれば一番簡単だからな >>127 妄言ってバカじゃないのおまえ 「・・・なんじゃないかな」と書いたし、断定はしていない それなのに鬼の首を取ったように勝ち誇っちゃって みっともない MembershipもIdentityも知らない俺に死角はなかった SQLはsqlite一択 ちなみにIdentityもMySQL環境のバグがもう上がってた 安定最新版のConnector for .net 6.8.3ではバグを踏む http://dev.mysql.com/doc/relnotes/connector-net/en/connector-net-news-6-8-4.html During migrations with ASP.NET Identity 1.0 in Visual Studio, the code generator did not generate the indexes and foreign keys in the Up() class. こういうDB依存のバグがあるのはIdentityでも変わらないよ DBを切り替えようとすると動かなくなったりする >>133 code generatorのバグが見つかっただけで、 「DBを切り替えようとすると動かなくなったりする」とは 鬼の首を取ったような言い様だな(笑) >>115 「調べるのもめんどうになってメンバー管理は自分で作った。 」 >>130 「本当に調べるのも面倒なら他社のDB使って開発したりしない」 一日でこうも人は成長するのか。 さすが本番用のライセンスを自分で払おうって人は違いますなぁ ちなみにメンバーシッププロパイダはSQL Server専用で納得してるような話の流れなんだが 実際にそのへんのプロパイダMySQL用に作って不具合とかあるの? ASP.NET MVC 3縛りの環境で使えるASP.NET Identityみたいなライブラリありませんか? >>136 お前、それマルチポストって言うからな。 .netユーザーってカスばっかだな 別の掲示板で質問したけどまじカスばっかで まともに回答できずにいい訳ばっか カスのくせに回答者きどってんじゃねえよ ってかんじ? >>138 掲示版の一般常識を指摘したら逆切れとはこれいかに。 無い物は誰に聞いてもないんだろうし、stackoverflowあたりで聞いてみればいいんじゃない? っていうか、単にIdentityみたいなって言われてもな Identityそのものを使う方法を探してるのか、特定の機能を実現するライブラリが欲しいのかわからん 新規プロジェクトでマスターサイトに出来るナビゲーションメニューですが ForeColorを変更しても文字色が変わりません フォントはちゃんと変わってます どこを変更したら変わりますか? vs2010をつかってます >>141 デフォでcssファイルが作られてるはず そっちで変えたらいいと思うよ多分 ただしバグがあるかもだから注意 ↓ ttp://www.logistech.co.jp/techtips/asp_stylesheet.html ありがとうございます なんとか出来ました バグは放置なんですかねえ… Ajax tool kitでモーダルなポップアップを出したく、 下記のサイトを見つけ、真似をしたら 思ったことが出来たのですが、ダイアログのボタンの、 OnClickイベントが動きません。 http://www.aspsnippets.com/Articles/ASPNet-AJAX-Modal-Popup-with-Rounded-Corners-using-CSS3.aspx どのようにすればイベントが実行できるのでしょうか? ASPを触って3日目の初心者で、基本的なことかと思いますが、 よろしくお願いします。 3日目でこれまたややこしいことしてますね。 http://stackoverflow.com/questions/142633/modalpopupextender-ok-button-click-event-not-firing これじゃないですか? AjaxControlToolkitは、正直ごちゃごちゃしていて使いづらい。 今からなら、ASP.NET MVCで始めたほうがスッキリ分かりやすいのでは。 <%と%>で囲まれたのはいったいなんなんでしょうか? 中にはnameと書いてあるだけです 一体どこから値をとってきてるんでしょう 検索キーワード教えてください >>146 名前は気にした事なかったな。調べたら、埋め込みコードブロックと言うらしい ただし、<%の次に何書いてるかで多少変わる サーバ側の処理を記述する所 たぶん、 <% name %>だとエラーになると思うが まずはASP.NETの入門書読め >>146 コードビハインド側にnameっていうプロパティが無いかチェック。 >>147-148 ありがとうございます コードビハインド.csにnameが見当たらないのでgrepしてみたら App_Web_ランダムっぽい文字列.dllの中にあるっぽいです Inherits=のところにApp_Web_ランダムっぽい文字がかいてありました。 これもコードビハインドってやつかな… ソースも見当たらないしdllしかないっぽいです ASPってなんだか難しくて奥が深いですね。もっと勉強してみます。 >>149 WEBサイトじゃなくてWEBアプリか... そのdllを作るソースファイルがどっかにあるはずなんだが 実行用のWEBサーバだとdllしか無いかもしれんな そのWEBを作った人に聞け まあ、他社の納めたサイトのデザインだけ直すみたいな糞案件もあるわけで。 今日出た現場がASP.NET3.5プロジェクトだったのだが, WebFormに貼られた<asp:Textbox ID="hogehoge" runat="server" />や<asp:HiddenField ID="hagehage" runat="server" />が クライアント側のタグのIDも"hogehoge"や"hagehage"でレンダリングされていた。 いつもみたいにID改変されるよりスクリプトが書きやすくて嬉しかったのでそのまま作業してきたが, どうしてそのままだったのか心当たりあったら教えてちょうだい。 「クライアント側のIDはどう決めるか」を切り替えられるのは.NET4.0からだったと思うんだが。 なお原因に関係なさそうだけど,using Microsoft.SharePoint;してSharePoint2010のAPIが使えるコードビハインドになっていた。 >>152 「いつもみたいにID改変される」のは、MasterPage使ってるからじゃない? まんまは staticにしないとならない 4.0で動かされていて、 clientIDModeが Staticに設定されてるとそうなる。 >>154 素のWebFormのaspxに配置していれば、IDは書き変えられ無いんだけど。 (ListView・UpdatePanel・UserControlの類は除くよ) 思い込みだろうから、最小のプログラム作って動作確認してみてくれよ。 だから、MasterPageつかってようが、どこに配置されてようが そういう風になる(出来る)ってことだよ。 GridViewをSqlDataSourceを使わずに使ってみたのですが、 編集モードの時にTextボックスに入れた値は、 どのように取得したら良いのでしょうか? RowEditingイベントでキャッチした値を 色々と見てみたのですが、どこにも入っておらず 参っております。 RowEditing イベントは、行の Edit ボタンがクリックされた場合に、GridView コントロールが編集モードになる前に発生します。 >158 ご回答ありがとうございます。 なるほどと思い調べ、RowUpdatingで見つかるかなと思い、 下記のコードを書いたのですが、 textName には思惑した編集時のテキストの内容は入っていませんでした。 protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { GridViewRow row = (GridViewRow)GridView1.Rows[e.RowIndex]; TextBox textName = (TextBox)row.Cells[0].Controls[0]; GridView1.DataBind(); } 読む資料読む資料、SqlDataSourceでのやり方しか書いておらず。。。 どうすれば良いのかご存知でしたら、お教え下さい。 159ですが、自己解決しました。 PageLoad時に、再描画用にデータソースをバインドしていたのが、 問題でした。 PostBackをよく理解していない素人ミスでした。 ご回答ありがとうございます。 httpsにしたらめちゃくちゃ遅い (体感10倍以上)んだがそんなもの? なんか設定間違えたかな 充分に早いサーバと回線とクライアントなら体感差は感じられないが 証明書の確認に時間かかったりする問題あったりするんじゃね GridViewのItemにDropDownListを配置し、 returnで配列を返す関数を作って、 その関数をDropDownListにバインドしてValueFieldを入れているのですが、 IndexFieldはどのように入れれば良いのでしょうか? List<KeyValuePair<string, string>> 返す関数にして DataTextField="key" DataValueField="value"とか >>165 完全に確認したわけではありませんが、 いけそうな動きをしました。 ありがとうございます! あるフォルダ内のファイルをズラズラファイル名順に一覧表示してくれる index.aspxをだれかかいてアップしておくれ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" ;> <html> <head><title>一覧</title></head> <body> <script runat="server" type="text/VB"> Protected Sub Page_Load(sender As Object, e As EventArgs) GridView1.DataSource = System.IO.Directory.GetFiles("C:\inetpub\wwwroot").OrderBy(Function(x) x) GridView1.DataBind() End Sub </script> <form id="form1" runat="server"> <asp:GridView ID="GridView1" runat="server" ShowHeader="false" /> </form></body></html> グリッドビューに表示されてるのをリンクにしてクリックしてファイルをひらけるようにわなにを書き加えれば Web配下ならページ作らなくてもディレクトリの参照をオンにするだけじゃね Webの外なら権限いるし 条件クリアしてるならBoundイベントでハイバーリンク生成か アンカーのソースにEvalでバインドか ハイパーリンクにするだけならテンプレート使えばいいかと ただハイパーリンクにしたからといって開けるかどうかは別の話だが よくわからないから S = "<A Href=" & ファイル名 & ">" で地味にやるわ membershipが理解でけんと苦戦していたらいつの間にかidentityとやらが・・・。 ついていけん。 sshで入ってソリューションを微修正くらいできるコンソール向けの簡易的な統合開発環境はないの? phpなんかと違ってファイル単位で修正するわけにもいかないし、slnファイルを扱える簡易的なエディタが欲しいんだが。 Turbo PascalやQuick Cみたいなやつ。 >>177 マルチは死ねば良いと思うけど ASP.NETのWEBサイトなら、該当ファイル修正すればいいだけだし なんならコンパイル用のバッチファイルなり作っとけば済む話 つかWindowsサーバにsshって一般的とは思えん。リモートディスクトップ使えよ >>178 リモート「デスクトップ」ね。 円盤の上で仕事しないっしょ。 昔の求人わ未経験可ってのが多かったのに今わダメなのかな? centos6.5でウェブサーバを構築しているのですが、 .aspファイルで作成しているソースを正常に読み出すことができません。 中には【<%@ LANGUAGE="VBSCRIPT" %>】などと、vbscriptで記述されているところが 文字として認識されてしまいます。 これは、linux自体がvbscriptを読み込めないのでしょうか? それとも、私の設定が間違っているのでしょうか? 一応monoをインストールして、ASP.NETは動くようになっています。 monoは.NETやろ ASPとASP.NETは別物やで Linuxで ASP 動かしたかったら、昔 Chili Soft ASP というやつがあったのを思い出した。 この名前でググると、国内のレンタルサーバでもこのモジュールをプリインストールしてある業者も多い。 Chili Soft ASP のページに行ったら Oracle にリダイレクトされたので、買収されたのかな。 WindowsServerって普通のゲーム、ニコニコ、YouTubeパソコンとしても使えんの? 質問です。教えてください。 グリッドビューの各行にボタンを追加し、クリックすると行の中にあるチェックボックスのフィールド(chk)の値を trueに変更するようにしたいのですが、うまくいきません。 ttp://www.atmarkit.co.jp/fdotnet/dotnettips/830aspgridvwcmdbtn2/aspgridvwcmdbtn2.html ↑これを参考にし、protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) の中に、自分で命名したchkedtコマンドネームの処理内容を書いたのですが、ダメなんです。 GridView1.Rows[args].Cells[1].Controls[1] =true; と書いても、 GridView1.Rows[args].FindControl("chk").values=true; と書いてもダメです(checkbox system.web.ui.controlにvaluesの定義が含まれておらず云々と言われます) フィールドの指定方法、bool型フィールドの参照方法、そういうのがぜんぶ手探りでやってるのですが、 何がいけないのか、教えてください。 よろしくお願いします。 >>188 argsとかどこでどうやって設定してるんだか FindControlはControl型で結果を返す チェックボックスとして扱いたいなら自分でキャストしてやらないとダメ チェックボックスにvaluesプロパティとかあったかどうか知らんが それ以外で動かないようならミニマムコード作って上げれ Webアプリの勉強をはじめています。 本を見ながら見よう見まねですが、かんたんな掲示板と、 ネット上で家計簿を作ってみるアプリをASP.NETで作っています。 とりあえず出来上がったらネット上にアップしていじってみたいのですが こんなもの、他人に検索されたくありません。 自作のWebアプリをネットにアップするのに、検索サイトには引っかからない ようにする、というのは可能なんでしょうか? 中の書き込みを見られたくないなら、ちゃんと認証部分も勉強し作ってから アップするべきでしょうか? デバグ用のIISでlocalhostとだけつないでろよ。 お前が孤島で何しようが、そんなとこ行くヤツはいないし、行きかたも分からん。 >>190 そもそもインターネットに上げる必要があるのか? インターネットに上げると言う事は、誰かにアクセスされる可能性は否定できない いやならちゃんと自分で防御して下さい >>192 ところが世界中の全ての島を踏破しようとするやつがいたりするんだよ、世の中には >>193 すべてのURL文字列に対して検索するの? >>190 アップってどこにどうやってするの? ASP.NETは基本IIS前提だからホスティングの選択肢が少ないけどアテはあるのか Webフォームから流行りのMVCに転向しようと思っているのですが、 MVCには、gridview的なコントローラーとか、全くないものなのでしょうか? もし無いなら、皆さん、どうやって書いているのでしょうか? MVCスレ行って聞けよ まあ、どっちのスレも見てるやつは同じ気はするがw >>196 MVCにコントロールはないよ MVCとWeb Formsは混在使用できるから 必要なら両方つかえばいいんじゃない 質問です。よろしくお願いします。 今、本を見ながら、Webフォームサイトを勉強がてら作っています。 認証画面からログイン後に移動する最初のページ(A)で、「あなたは○回目のログインです」と 表示させたいのですが、ログイン回数のカウントを1足すタイミングに困っています。 これまでの回数データはプロファイルで保存することにして、これはうまく行きました。 ただ数値を足すタイミングですが、認証完了時というイベントやその場合の動作 Profile.LogCnt=Profile.LogCnt+1; を書く場所がわかりません。 A.aspxのロード時では、サイト内でページ遷移してAに戻るたび何回もカウントが足されてしまってダメなんです。 認証完了イベント等はどこにどう書けばいいのか、あるいはもっと適切なタイミングがあるのか、教えてください。 セッションにでもカウントしたかどうかを覚えさせときゃいいんじゃね? >>200 目から鱗です どうもありがとうございました >>199 ログイン回数って普通はログイン(認証)に成功したらカウントアップするんだから 認証画面で、認証に成功したかどうか判断してから、移動するまでの間にカウントアップするもんじゃないかね 認証画面はどうなってるんだ? >>202 永続化はプロファイルがやってくれるんじゃないかな httpsで作成したサイトに、iframeを使っているのですが、 IEでhtmlページを表示すると、 「セキュリティで保護された Web ページ コンテンツのみを表示しますか?」という 警告が出てしまいます。 これを、ユーザにIEの設定をさせずに回避する方法はあるでしょうか? ASP.NET関係ないじゃん iframeで表示する中身のページがhttps通信に対応していない限りはないよ iframeのソースをサーバ側で読みとって そのままクライアントに(httpsで)渡すとかすれば良いんじゃw /shop/cart/cart.aspx のECサイトをたまに見かけるのだが、あれはどっかの製品? 検索しても出所がワカラン。試したいのだが。 すみません VS 2010で、ASP.NETでaspx形式のwebプログラミングをやってました。 サーバーコントロールとSQLサーバを使うような内容です。 しばらくプログラミングはやっていなかったのですが、最近、.NET周辺で大きい変化があり、 よくわからなくなりました。 1、VS community 2013って、vs 2013と同じものなんでしょうか。 すると、ASP.NET 4.5.1に開発環境が対応しているのでしょうか。 2、linuxでも、asp.net が対応して、ASP.NET 5なら動作するようになると聞きました。 ASP.NET 5対応の開発環境って現在はどれなのでしょうか。 3、結局、リッチなクライアントUIを実現するAjax開発は、VS community 2013だと、 どんなシステムが使われるのでしょうか。VSにすでに組み込まれていますか? (サーバーコントロールベースの AJAX Extensionsとcontrol tool kit、クライアントサイドのjQueryなんでしょうか。) よろしくお願いします。 >>208 1.pro相当 2.2013でok 3.それでもok,サーバー側はJsonResultで返してクライアントでobjectで受け取れる ☆ 日本の核ブ装は絶対に必須ですわ。☆ http://www.soumu.go.jp/senkyo/kokumin_touhyou/index.html ☆ 日本国民の皆様方、2016年7月の『第24回 参議院選挙』で、改憲の参議院議員が 3分の2以上を超えると日本国憲法の改正です。皆様方、必ず投票に自ら足を運んでください。 私たちの日本国憲法を絶対に改正しましょう。☆ ここ、物凄い過疎ですがasp.netって 世間ではあまり使われていないんですか? ああ、何でこんな質問するかと言うと、webプログラミング勉強中で、phpも少し覚えたんですが、この際windows系も勉強しようかなと思って。でも人気無いならやめておこうかな。 エンタープライズ領域でよく使われているし、どれくらい使われているというか何に向いているかを理解したほうが良い あとVisual Studioを中心に開発環境もオールインワンなのは楽だね PHPでデバッグ環境作るの初心者には大変でしょ >>214 レス有り難うございました。 エンタープライズで使われているということは信頼性は高いんですね。 今のところ無料のレンタルサーバー使ってphpの練習している程度なんですが、asp.netならvs使えばオールインワンなんですね。なるほど。やってみようかな。c#やc++などでプログラミングするんですか?ああ.netだからc#だけなのかな。 Windowsの無料レンタルサーバがあればなぁ。もっと敷居が低くなるんだろうけど。 >>215 プログラミングはVB.NETでも可能。 >>215 ,218 @PageディレクティブのLanguageの解説とか見てみ 言語は基本的には >.NET Framework でサポートされるすべての言語を指定できます だ WEBサイトで全言語可能かどうかは知らん このスレにはwindows関連のwebプログラミングの専門家が多そうなので教えて欲しいのですが、 win7x64で空のWebページを新規作成して実行した場合 localhost:12345 見たいなwebサーバーに対してdebugなど行えますよね。このwebサーバーは何ですか? 調べてみたらIIS Expressがprogram files(x86)/IIS Express/って言うフォルダに入っていました。webサーバーの実体はこれですか? >>220 今のVisual Studioの既定の設定だとIIS Expressだと思うけど 設定とか環境によるんで何とも言えん IIS Expressなら起動時にタスクトレイになんか出てなかったか >>221 レス有難うございました。 どうすればこのport80を利用しているwebサーバーの実体を突き止められるんだろうと思って探ってみましたが分かりませんでした。 ところで、IISサーバーとIIS Expressサーバーって、違うんですよね? もう何が何だか分からなくなって来た。 >>221 ああタスクトレイには特に何も出ていません。 >>222 タスクトレイになにもでてなくて、ポート80を使ってるなら、IISの可能性が高いけど win7ってIIS標準じゃ入らなかったと思ったんだが。あとエディションによってはそもそも入らん ポート待ち受けしてるプロセスが知りたかったらnetstat -abあたりで解るはず なんにせよお前の環境はお前しか知らんわ ASP.NETで、PDFフォームからフォームデータを受け取れるでしょうか? MVCは難しかったので、WEBフォームで出来るなら、 乗り換えようと考えております。 >>225 マルチポストするような奴の質問に興味無いです・・。せめてリンク書けよ。 >>266 冷静に考えると、 MVCなんて過疎技術にコメントが付くとは思えなかったので、 ここに書き直しました。 世界に400人も居ないでしょうからね。 MVC使う人なんて。。。 >>227 じゃあMVC側にこちらへのリンクを貼るべき。マナー違反。 主流はMVCなんだけどね。 質問の仕方といい、ものを知らなすぎでしょ。 ASP.NETみたいなドマイナーな技術では、 マルチポストは許されて当然です。 日本のASP人口なんて、100人未満なのですからね。 マルチポストするまでもなく、 大量のレスが付くPHPなんかと 同列に考える方が非常識です。 で、なんでそのどマイナーな環境でやろうとしてるの? 自分でできもしないのに >>229 phpでやってれば? 質問して答えてもらったコードをまるごとコピペできるからね(笑) 君にはお似合いだよ。 asp.netって良い技術だと思うんですが、利用しているのは主に企業のwebページですよね。 個人がasp.net使って自作のwebページ作ったりするのが少ないのは、技術的にasp.netの敷居が高いからですか? >>232 ホスティングできる環境が少ないのが最大の問題だと思うが >>233 利用者が少ないからasp.net使えるホストが少ないのか、その逆か。鶏と卵かな。 asp.netって絶対に便利ですよね。 webアプリ作るのにc#で書けるなんて理想的だと思うんだけどなあ。 233さんは個人か会社で使っているん? >>234 ホスティングについては、OS等のライセンスがネックになってると思う 俺は個人でも仕事でも使うよ 個人でWindowsサーバの本番ライセンスもってたりする。バージョン古いけどw >>235 >>>234 >ホスティングについては、OS等のライセンスがネックになってると思う windows の共用かvpsレンタルサーバー契約すれば良いんじゃないの?そしたらライセンスを自分で買わなくても良いんじゃない? >俺は個人でも仕事でも使うよ >個人でWindowsサーバの本番ライセンスもってたりする。バージョン古いけどw 個人の用途は何ですか?すっごいwebサイト運営しているとか? 今だったらAzureでいいやん。 ライセンス持ってるからなんだよと。 Azureって毎月3000円くらい掛かりませんか?SQL有りの場合。 ちょっと高いかも 何と比べて高いの? Azureの場合、データは3重の複製で保護されてたり、電気代含めサービス料込と思わないと高いかもね。 自分で同等のことしたら借金で首が回らないだろうけど(笑) >>239 月々1000円くらいで契約出来るwindows系のvpsレンタルサーバーと比べた場合。 実は今どこかと契約しようと考え中。 azureにするかなあ。なんだかんだ言っても本家msだからasp.netやるなら最適かな。hw性能やバックボーンは心配ないだろうし。 もしmsのここがいいみたいなのが有れば教えてくれよ。 今ならAzureだろうなぁ ただ、Azureの有料プランって、転送料で課金増えるよな んで、それって上限設定とかできんよな? つまり、嫌がらせ受けたら課金で死ねるって事になると思うと怖くて手を出せん >>241 >Azureの有料プランって、転送料で課金増えるよな さんきゅう。それは知らんかった。 >つまり、嫌がらせ受けたら課金で死ねるって事になると思うと怖くて手を出せん さっそく調べてみるわ。ありがとう >>241 転送の下りに課金ね 金額の制限はかけられないけど、アラートは飛ばせるよ まあ、負荷分散でインスタンスを立ち上げ過ぎなきゃ死ぬほど課金されることはないでしょ 攻撃性のあるものはAzureのレイヤで弾くだろうし、悪質なものはMSが当局と差し押さえに行くらしいよ(震) >>243 >金額の制限はかけられないけど、 と言う事は、知らないうちに高額料金を請求される可能性が無い事は無いって事ね? それは困るなあ。 >>244 知らない間にって、アラートは飛ばせると・・。 あと転送量だけで高額課金されることを心配するなら、どれだけのデータ量が必要かちっと計算してみては。 数万円が高額って認識なら終いだし、その手の見積もりができないならオンプレでもホスティングだろうが何かしらトラブルが待ってるわけで・・。 >>245 アラートって事後報告に成るんですよね? 事前に何らかの制限を掛ける機能は無いんですよね? そこがちょっと心配かな。 >>246 アラートを飛ばしたい金額を低めにしておけば、事後になってしまう前に気付くはずでは? asp.netでwebサイト作ったとしても、 クライアントサイド向けにはJSなどのプログラミングも必要ですよね? クライアントサイドでどれだけの事をやるかによるけど、まあ、必須だな クライアント用のスクリプトまで内包したコントロールも作れる事は作れるけど ASP.NETは基本的にはサーバサイドのテクノロジだからな >>249 レス有り難うございました。 今日からasp.net勉強開始する予定です。 >クライアント用のスクリプトまで内包したコントロールも作れる事は作れるけど 特殊なコントロールなんですか? ググるキーワードなど有れば教えて下さい。 >>250 updatepanelだっけ?ajaxで自動更新してくれるの。あれは結構感動したよ >>251 有り難うございます。 早速ググってみます。 これからasp.netで時々質問させて貰いたいと思いますので、先輩よろしくお願いします。 いまからwebフォームはじめても先がないんじゃ? 同一プロジェクトでMVCとうまく共存できるようになったんだっけ? >>253 業務用のwebサイト構築に関しては知らないけど、個人的に使って見てC#でプログラム書けるから便利だと思う。 >>254 論点はwebフォームかMVCかと言う事じゃないかと思うんだが 実はwebフォームなら分かるんですが、MVCという技術は殆ど知りません。 WFPと関係有るんでしたっけ? モデル、ビュー、コントローラの3層に分けてそれぞれに仕事を任せる方法。 asp.net mvcはそれを作りやすくvsが支援してくれる。 wpfはmvvmじゃないかな?やったことないからわからんが。 >>257 解説有り難うございます。 知らない技術が多いので勉強します MVCなどは技術ではなくてパターンでしかないので、見様見真似で何とかなるはなし。 本質はそこではない。 >>253 Web formsとASP.net MVCは共存できる 場所によって使い分けられる VSのバージョン古いとだめだけど >>256 asp.net mvcの大きな特徴は コントロールがない ポストバックがない 長所は性能が高いこと UIデザインを完全に制御できること >>259 MVCと省略して書いてる人多いが、いまはASP.net MVCの話をしている。 技術的にもWeb formsとは別物 すみませんお願いします。 ASP.NETのwebフォームユーザです。VS2010pを使っています。 page上で自作C#クラスからsqlcommandを発行してSQL SERVERのストアドプロシジャを読みだして、 ListViewにバインドすることができました。 ListViewの<template>を駆使して、<table><tr><td>構造で取得したレコード内容を表示させるわけですが、 思ったようなデザインができません。 CSSを使って、奇数行の色分けはできましたが、限界を感じています。 (今まで、Accessのレポートを使っていたので思う通りにデザインできていました。) もっとCSSを使えるようになってデザインもできるようになりたいんですが、 これは何かのデザインツールが必要だと思うに至りました。 ListviewサーバコントロールとCSSとデザインツールを駆使して、思う通りのデザインをしたいんですが、 可能なんでしょうか。 のちのことを考えればMVCに移行したほうが良いときなんでしょうが、 MVCを使えるようになるまではしばらくはサーバコントロールを使いたいと思っています。 たとえば、ListViewの吐き出したhtmlを読み込んで、 マウスでテーブルの列幅や高さなどを調整して、CSSファイルとして保存する。 必要なclassやタグは、ListViewのItemTemplateに手動で記述する。 保存しておいたCSSファイルとがっちゃんこして、素敵なデザインを構成できればなあと考えています。 >>262-263 ListViewのテンプレート、デザインモードで編集できないんだな >ListviewサーバコントロールとCSSとデザインツールを駆使して、思う通りのデザインを まあ、デザインツールがあれだが、テンプレートでほぼ思い通りのデザインに出来ると思うが >必要なclassやタグは、ListViewのItemTemplateに手動で記述する 必要なclassやタグを自分で書くのなら、普通にソースビューでテンプレート修正すればいいだけでは なんか適当なhtmlデザインツールでダミーのテーブルでも作ってコピペすればいいんじゃね ソースビューで思うとおりに編集できないなら、MVCでデザインとかレイアウトとか多分無理だぞ >>264 レスありがとうございます。 >テンプレートでほぼ思い通りのデザインに出来る >ソースビューで思うとおりに編集できないなら、MVCでデザインとかレイアウトとか多分無理だぞ どんなHTML要素をListViewのXXtemplateで吐き出すようにすればよいんでしょうか。 <TABLE>だと思い通りの場所にデータを配置するのは限界があると思うんです。 >>265 コントロールとか関係なく、素のhtml(とcss)で思った通りのレイアウト書けるのか? それが出来ないと話にならんのだが、まあ出来ないんだろうから適当なデザインツールでデザインしてコピペしろと それが出来るなら、そうなるようにテンプレート書けば良いだけ まあ、完璧に再現出来ない事もあるかもしれんが、それなら再現したいhtml明示して どうしてもListViewで無理ならRepeater最強w >>266 ありがとうございます。 素のHTML,CSSで、思った通りのデザインができることが大切なんですね。 サーバーコントロールが便利だ!って考えていたので、HTMLなんて触る気持ちが今ままでは0でした。 逆転しましたね。サーバーコントロールよりも、HTML,CSSがメインになってしまったと感じます。 <TABLE>タグくらいが多かったwebアプリにもデザインが求められるようになったからでしょうか。 それからすみません、 Repeaterつかうと、Listviewにできない何ができるようになるんでしょうか。 MVCの世界に片足つっこんでますよね。 世の中の流れはJavaScript+HTML+CSSだからね。 c#でwebアプリを作ってもデフォでbootstrapがついてくる。 >>268 bootstrapって、ms以外の物でオープンソースなんですよね。 必要なパッケージを開発環境にインストールできるようになったのも、 今後はms以外のオープンソースな物をどんどん使って行くことになるってことですよね。 webで必要な技術は、webがオープンであるがゆえに、 msだけでは付いて行けなくなったのかなあ。 デスクトップアプリを.netで作ると簡単に逆コンパイル出来るけど、asp.netの場合はどうなの? サーバーサイドの.netのバイナリーファイルをクライアントサイドから見えたりしないの? 実行ファイルが見えるかどうかと逆コンパイル出来るかどうかは違う話だが 普通サーバサイドの実行ファイルやそのソースは見えたりしないようにする 不適切な設定してたらしらん。デフォルトの設定でもその辺が見えるようなことはない WebForm1.aspxと言うファイルを発行する際に、 いわゆるminifyみたいな処理をして発行したいのですが、標準でそういう 機能をVisual Studio 2013は持っていますか? 要するに不要なコメントなど除去して発行したいのですが。 >>272 単に不要なコメントを除去するだけだったら、「サーバー側コメントブロック」を使うといいよ <%-- コメント --%> みたいな書き方するとクライアントには送信されない。 発行するときにaspxから除去したいとなると、違う方法が要るね >>273 レスありがとございました。 <%-- コメント --%> このコメントがそういう意味だったのですか! 知らなかった。ASP.NET一週間目くらいなのですが、なんでこんな 変なコメントがあるのか疑問でしたが解消できました。感謝です。 コメントに限らず<% %>はサーバ側で処理する内容だからな aspxのミニファイは標準ではたぶん対応してないと思う。探せばいくつかツールは見つかるけど aspxは一旦サーバ側でコンパイルされてキャッシュされるから、どの程度のパフォーマンス向上があるかわからんしねぇ たしかに転送量は若干へるだろうけど、ビューステートに比べれば微々たるもんだと言う気がするわ 皆さんとても詳しそうなので、もう一つ教えてください。 WebForm1.aspxにTextBox1とButton1を配置してTextBox1に入力したデータをButton1を押すと サーバー側でそのデータをC#で加工するという単純なアプリを作っています。 だいたいうまく行くのですが、問題があります。 それは、TextBox1にコピペでデータを貼り付けた場合に、その直後にButton1を押してもC#でTextBox1.Text を取り出しても、中身がありません。 コピペした後でButton1を押す前にFormの上を一回クリックするとか、他の部分を触るなどした後でButton1を押すと C#でそのデータが取り出せます。要するにTextBox1にコピペした後、フォーカスが他の部分に移ると上手く行くようなのですが、 Formをクリックするなど面倒なので、もっとスマートに解決する方法はありますか?VS2013、.NET4.0です >>276 それはサーバ側(ASP.NET)の問題じゃなくて、クライアント側(ブラウザ)の問題だと思われるが そもそもボタンを押したのなら、その時フォーカスはボタンに移ってるはずだが ブラウザ何で、どうやって送信してるんだ ブラウザ側のスクリプトでなんかやってんじゃないのか >>276 >Formの上を一回クリックする フォームって、論理的なものであって、不可視じゃないの? ASP.NET v.s.2010で、サーバーコントロールでWEBアプリを作っています。 まだ始まったばかりなので、自作クラスを作りながらのことが多いです。 自作クラスは、一つのWEBアプリ内に、csファイルとして作成しています。 一応、ネームスペースにまとめるようにしています。 しかし、これをほかのアプリからも使うんですが、 やはり、exeファイルのアセンブリにコンパイルしなおしたほうが良いでしょうか。 ずぼらな性格なので、必要なものを探し回ったり、あるいはコードに変更を加えてしまって、従来からのアプリに影響がでて困ったり、 いろいろと不安要素があります。 なにか、汎用クラスの管理にコツがあったたら教えてください。 >>278 フォームというより、ブラウザーの余白部分とかそういう意味でした。 >>277 >ブラウザ何で、どうやって送信してるんだ VS2013でWebフォームアプリの作成を選んで、 自動生成されるWebForm1.aspxに ScriptManager1 TextBox1 Button1 を配置しただけの簡単なアプリです。 このやり方で良いのかどうかも良く分かりません。 >>279 いまさら2010かよ 複数のアプリで使うのなら、その部分ははじめから別プロジェクトでdll作っとけよ exeにする必要なんてないぞ >>280 サーバサイドとクライアントサイドの区別ついてるか? ブラウザは何で、どうやってブラウザから送信してるのかって聞いてるんだが >>281 レス、ありがとう、さっそく。 >別プロジェクトでdll作っとけ 抽象クラスも混じっているし、単独で走らせられない(実行のできない)クラス群になるんですが、 別プロジェクトに切り離して、どうやってデバッグするんでしょうか。 あっ!、検証用のコードも混じらせるということなのかな。 >>280 >ScriptManager1 これが臭いんだが、 これを外した、通常動作のものは動作するのだろうか。 >>281 コミュニティー2013を使うと、 2010にはないメリットがあったら、教えてください。 インストールするきっかけがほしい。 >>282 ie11 Button1のOnClickでC#の関数に行くからそこでTextBox1.Textを読んでるんだが。 何かおかしい? >>286 >TextBox1.Text これって、ajaxの定義範囲から外れて定義されているとかない? >>284 >>ScriptManager1 >これが臭いんだが、 自分でも何でこれを追加したのか忘れました。とにかく最初に質問したようにTextBox1にコピペした場合や、deleteキーやbackspaceキーで編集した直後にButton1押して、C#側でそのデータを読み出したいだけなんですが。なぜか変更前のデータになってしまいます >>287 >これって、ajaxの定義範囲から外れて定義されているとかない? それはどうやって調べれば分かりますか? <asp:TextBox ... みたいに頭に<aspがついていますがこれでいいんでしょうか? >>288 一度、新しくWEBページを作成して、 テストコードを入力したほうが早いと思うよ。 なんか、ajax関係の動作が噛んでおかしくなっていそう。(ScriptManagerはその役割を担っている) おっしゃっている、テスト動作は、ふつう、問題なくできるよ。 page_loadや、button_clickサーバイベントハンドラで取得するんでしょ。 問題ないはず。 >>290 ありがとうございました! 新規にやり直したら、うまく行きました。 ASP.NETやっている人はみんな親切でいいなあ。 また質問なんですが、 WebForm1を実行すると以下のような順番でイベントが発生するようです。 C#のPage_Init() C#のPage_Load() $(document).ready() $(window).load() C#側では IsPostBack == true と言う判定を使えばPostBackかどうか分かりますが、 クライアントサイドでも同じような判定は可能でしょうか? 要するに最初にWebForm1を開いて$(document).ready()など実行される場合と、 それ以降に$(document).ready()が実行される場合を区別出来ますか? >>292 というか、getと、postしかないから、 クライアントサイドからどうのこうのという場合は、常にpostなのでは? >>283 >別プロジェクトに切り離して、どうやってデバッグするんでしょうか。 同じソリューションなら普通にデバッグできるだろ 今時一つのソリューションで複数プロジェクト扱えないようなエディション使ってたら知らん >>292 サーバサイドとクライアントサイドの区別ついてるか... クライアントで非同期ポストパックかどうか調べたいって話ならPageRequestManager使えばいいんじゃね 使い方は適当にググれ >>293 常にpostだってのが、フォームをsubmitするメソッドの事を言ってるのなら getでポストバックさせることもできるぞ クライアントサイドからのアクションはポストバックにきまってるだろっていうならまあその通りか ただ$(document).ready()とかは初回表示時もポストバック時も非同期ポストバック時も発生するから >>296 >ただ$(document).ready()とかは初回表示時もポストバック時も非同期ポストバック時も発生するから それをクライアントサイドで区別したいんですが、無理ですか? >>297 よくわからんが、初回表示した時と、なんらかのアクション後(POST BACK後)をクライアントサイドでも区別したいということかな? 多分、サーバー側でその状態をJavaScriptとして書き出せばできるんじゃなかろうか。 PageRequestManager使えって言ってるだろ >>295 知らない奴に限って要領を得ない事をグダグダ書くんだよな そりゃ要点をちゃんと抑えて整理出来るなら自分で解決できてるだろうからな >>283 ありがとうございます。 できました! しかし、objフォルダと、binフォルダと、どう違うんでしょうか。 両方に、同じ名称で同じサイズのdllがあったんですが。 objフォルダに入っているdllを、参照設定しましたけど。 iisとasp.netでwebサイト作った場合、物凄く負荷が大きい時に誤動作してAさん向けのページがBさんに表示されるなんて事は無いですか? >>302 dllを参照するんじゃなくて、そのdllを作るプロジェクトを参照するんだぞ >>303 高負荷でそんな「誤動作」するとか見たことも聞いたことも無いわ TextBoxに文字貼り付けるとValidationが反応して怒られる場合有りますよね。 これを無効化するとどう言う危険性が有るんですか? 貼られた文字列を実行する処理など入れて無ければ問題無いですよね? >>303 そんなの有ったとしてもアプリケーション側のバグでしょ >>304 プロジェクトフォルダ内にあるobjフォルダのアセンブリ(dll)自体を参照させたら、 参照側プロジェクトにdllファイルが自動的にコピーされたんだけど。 >>306 その程度の認識だとXSSの考慮が漏れてそう・・。 まあ出力時にエスケープが徹底されていれば問題ないけど。 クライアントサイドのバリデーションは所詮はユーザビリティ向上くらいの意味だから 切りたければ切っても良いと思うけど、Webアプリまわりのセキュリティについて一度勉強した方が良いのでは。 >>311 モデルクラスで解決すべき問題だと認識されていますか >>306 入力した文字列を、表示しようとしただけで攻撃が成功する可能性があるから よくわからんならそのままにしとけ >>308 参照にはローカルコピーするかどうかの設定があるわけだが コピーされたからどうだと? dll側もデバッグしたいんだろ?素直に言われた通りやっとけ >>311 いや、たぶん、クライアントサイドでバリデーションするとか言う話ではなく 標準でポスト時にかってにポストデータ検証される機能の事だと思うぞ まあWebアプリのセキュリティについて勉強しろってのは激しく同意するが >>313 >入力した文字列を、表示しようとしただけで攻撃が成功する可能性 そんな文字列あるんか? HTMLENCODEでほぼ解決! あとは、致命的なバグだろうな。 if (inputvalue == "reset") { Reboot; } こういうバックドアを書いていたら、入力される文字列で攻撃が完成する。 >>304 >>314 レスいただきありがとうございます。 アセンブリを参照するための方法として、二つあるってこと? 1、dllファイルのみを、参照する側のプロジェクトにコピー 2、プロジェクトフォルダごと、参照する側のプロジェクトから参照する設定を加える 考えられたこととして、 2、の場合だと、被参照プロジェクトでバージョンアップしたとき、 参照側のプロジェクトに影響する。 もちろん、良い意味と、悪い意味と、両方。 1、の場合だと、 被参照プロジェクト側がどう変更されようが、参照側のプロジェクトには一切の影響がない。 なぜ、>>314 さんは、2の方法を推薦するのか、知りたいです。 >>317 それは入力した文字列を実行するんじゃ無いだろ。単におバカプログラマーだ >>316 何も考えずにそのまま全部表示しようとしたら スクリプトインジェクション系の攻撃は全部成功だろ >>318 .csprojファイル編集したら好きなように出来るだろ。どうでもいい変な事を悩むなよ >>315 すみません、わかりました。 >>314 >dll側もデバッグしたいんだろ? そういうことです。 >>320 表示って、textboxに入力されたら内容をそのままtextboxに表示するだけだぞ。 それで攻撃が完了するのか? >>321 GUI操作にとらわれずに、自分で、アセンブリ参照を書き換えなさいってことでしょうか。 >>324 書き換えたければそう言う方法もあるっていうだけで、勧めている訳ではないが、設定の多くはcsprojファイルに書かれて居るので、手っ取り早い方法はcsprojの編集だとおもう。 >>319 入力された文字が実行されたり、(インジェクションとか、xss) 入力された文字が「意図された」コードの実行を起こしたり、(>>317 ) あくまでコードが正しく実行されて、攻撃が完成する場合は納得できます。 しかし、.net側のセキュリティーホールで、意図しないところで攻撃が実現されてしまうことはあるんでしょうかね。 いままで、フレームワーク上の欠陥で、セキュリティーホールが生じたことってあったのかなあ。 そうでなければ、あとはプログラマの技量だけで、どうにでもなりますよね。 WEBを全世界に公開するのもためらいませんが、,net事態の欠陥で、危ぶまれるのなら、躊躇するなあ。 >>318 そこに書いてあるけど、dll側もデバッグしたいんだろ? その参照されるdllってのは、元プロジェクトから切り出した部分じゃないのか? つまり自分で変更するし、変更が反映されないと困るんじゃないのか? そのdll(のソース)に手を入れない前提なら好きにすればいい >>323 Textbox.Textはたしか勝手にエンコードするから大丈夫 でも全ての表示できる内容がエンコードされるわけじゃない たしかLabel.Textは生HTMLで出力する 適切にエンコードした出力すれば大丈夫なんだが、それが難しい せめて危険かどうかの判断ができるようになるまで、保険的にバリデート外すなって言ってる まあ、あれ、SQL系のインジェクションにはほとんど無力なんだがな >>328 >SQL系のインジェクション この対策は、parameterオブジェクトのaddメソッドで、parameterを追加する方法で、 回避可能だと聞いたことがあります。もちろん、ストアドプロシジャでしか使えないけど。 >>328 Labelも含めて、ブラウザに出力するコントロールのすべてにおいて、 デフォで、htmlEcodeをかけておいてほしかったな。 必要なら、意識して自分で外せるようにしておいてもらったほうが良かった。 >>326 >net側のセキュリティーホールで、意図しないところで攻撃が実現されてしまうことはあるんでしょうかね。 可能性としては当然ある >フレームワーク上の欠陥で、セキュリティーホールが生じたことってあったのかなあ。 いくらでもある 何のためにマイクロソフトがいっぱいアップデートパッチ出してると思ってるんだ 少なくともお前や俺がミスってセキュリティホール作る方が フレームワークの欠陥で穴が見つかるよりよっぽど可能性が高いから心配するな >>327 その通りです。すみません、先に>>322 にレスしていました。 >>331 やはりあったんだ。 せっかくしっかり作りこんでいても、土台でセキュリティーホールがあったら、 どうしようもないな。 今、一つ気になっているのは、クエリストリングの処理。 間違えて、URLとクエリストリングの文字列に、さらにクエリストリングを連結させてしまったら、 ランタイムエラーが出ずに、「,」が復元先のテキストボックスに表示されてしまったよ。 (同名のクエリストリングが重なった状態になったのだと思う。) クエリストリングも公開WEBアプリには使わないほうがいいと思った。 >>329 ストアドじゃなくてもパラメタは使える まあ、SQLインジェクションに対してはパラメタ使えってのは鉄則 なんだが、ついつい動的にSQL書いちまうんだよなぁ >>325 ありがとうございます。 csprojの編集ということもできるなんて、初めて知ったので、勉強になりました。 >>335 そうなんですか。Sql server系だったら、@パラメーターを、sql文字列に埋め込んでおいて、 同じ要領で、パラメーターオブジェクトをコマンドオブジェクトに組み込んで、投げることができるんですね。 しかし、sql動的作成だと、パラメーター以外に、インジェクションされる危険が多々ありますよね。 日本語しか入力させないようにしたら少しはましになるのかな。 >>334 それはお前の間違いであって、フレームワークの穴じゃないだろ そこでクエリストリングの仕様と、起こった事の詳細を解明しようと思わないなら プログラミングやめた方がいいよ、マジで >>338 ポストバックされたページから、urlをつかんだら、すでにクエリストリングが含まれているんですよね。 そこからクエリストリングを切断したうえで、新たなクエリストリングを連結させる必要があったんですよ。 ここまでが、MS提供のライブラリを使うプログラマの範囲かなと思うんです。 しかし、なぜ、同名のクエリストリングが重なったら、おかしい文字列が取得されるのかは、 ライブラリ内の話になるので、追及できません。それとも、逆アセンブリするんでしょうか。 同じ問題が生じないように、対策を立てることくらいはできますけどね。 値を取得する前に、クエリストリングのキーがダブっていないか、検査するとか。 例外を投げてほしかったな。 >>339 >なぜ、同名のクエリストリングが重なったら、おかしい文字列が取得されるのか コード見ないとわからんが、まあ多分、お前の取得の仕方が悪いだけ お前が勝手に同名のクエリ文字列は存在しないと思いこんでるだけで それ前提で作れば、当然おかしな動作するわな HttpRequest.QueryStringの戻りはNameValueCollection NameValueCollection.Itemの戻りは、指定したキーに関連付けられた値のコンマ区切りのリストを格納する String おかしな文字列でもなんでもなく正しく動いてるようにみえるな >>340 キーの話だけじゃないんだ。 ?もダブっている。 http://honyarara.com?key1=asdf& ;amp;key2=werf?key1=fafag&key2=greasge こんな感じで、?からダブっているイメージ。 こんなurlでpageへポストバックして、querystringのコレクションを読み出すけど、 例外が発生しないわけなんだよ。 もちろん、querystringを作成する処理にバグを発生させてしまっていたので、 修正したのだけれど。 >>341 honyararaって、実在サイトだった! 私とは関係ないので、あしからず。 >>341 例外を発生させるべき理由なんてないけど? おかしいのはお前の理解 まさに、お前の思った通りに動かなくてもお前がプログラムした通り動いてる 初歩的な質問なのですが、 VSのソリューションMyHomePageというのを作って Default.aspx sub1/Default1.aspx sub2/Default2.aspx のようなディレクトリ構成で、それを発行して www.example.com/MyHomePage/ (1) に配置しました。その時 www.example.com にアクセスした場合に、 www.example.com/MyHomePage/Default.aspx (2) を開くにはどういう方式を使うのが一般的ですか? 現状では、 www.example.com/index.html (3) を作成してその中で(2)にredirectしています。でもこれだと、 www.example.com/sub1/ にアクセスすると当然エラーしてしまいます。 >>343 感情的にならずに、何がどうおかしいのか、論破すべきだよ >>344 IISの設定をみなおしあ >>341 なんで「?」が二重にあるの >>345 横からだけど・・・ HttpRequest.QueryString https://msdn.microsoft.com/ja-jp/library/system.web.httprequest.querystring (v=vs.110).aspx NameValueCollection https://msdn.microsoft.com/ja-jp/library/system.collections.specialized.namevaluecollection (v=vs.110).aspx そんな例外は仕様に書かれていないし、「例外が発生しない」ものはしない。 無い物ねだりをしているのは >>345 であって、その例外が発生すべき理由を論理的に説明できていない。 (>>334 の内容がASP.NETの挙動として何がおかしいのか分からない。アプリケーション的に問題のあるPOST内容をエスケープできてないだけ) ASP.NETの仕様に提案があればMSは受け付けているし、そっちでどうぞ。 それも嫌だったら、「俺の考えた最強のセキュリティー機能搭載フレームワーク」を独自開発してくれって話だ。 馬鹿なPHPerがよく陥りやすい思考回路だけどね。 >>344 でもこれだとって、それ別の話なんだが とりあえずsub1にもindex.html作っとけば >>347 仕様的におかしなことをしたからって、全てが例外を吐くとは限らんけどな だから、おかしいと思ったらまず仕様を確認してそれに則ってるか確認するべき で、おそらく>>334 はクエリストリングの仕様を正しく理解してない。さんざん言われてるのに >>345 は多分別人だろ >>348 そう言う方法ではサブフォルダが増える度にredirect設定が必要じゃん。そうでは無くてasp.netの仮想デレクトリとかそう言う機能で出来るかな? >>351 仮想ディレクトリはASP.NETじゃなくてIISの機能 フォルダのデフォルトページと、ページが見つからなかった場合の処理は別の話なんだが とりあえずIISかASP.NETかで404エラー捕まえて何とかすりゃ良いんじゃね >>350 定義されてない例外は起きないと言ってるのに、どうしたの? 黙っててくれるかな? >>352 >404エラー捕まえて何とかすりゃ良いんじゃね そんな方法ってあり? もっと正統的な方法があると思うのだがググッテも見つからん。 >>353 定義されていないから、例外として捕捉されるんじゃないの?? >>355 そんな難しい話は置いといて344お願いしますだ。 >>355 え?こういう例外が起きますよ、ってMSDNに書いてあるよね。 それ以外に例外は起きようがない。 マニュアルも読めないなら黙っとけ(笑) >>360 君は検索の達人か! 飯食った後でじっくり読んでみるよ。有難う。 >>361 それでええんやで フレームワークから得ている恩恵を顧みずに勉強不足を棚に上げて、文句ばかり言わないように。 >>363 あなたの論理とは違うところで、そういう判断に至ったわけなので、 「それでいいんやで」なんて、気持ちの悪くなるようなこと言わないでください わたしは、あなたの例外だ。しかも、捕捉もできない型なんでw >>364 アプリケーション的にそうせざるを得ないだけでしょ? .NETにセキュリティ的に不安があるんじゃなかったの?どういう思考回路でこのまま.NETでいくことにしたの?君のアプリのセキュリティは万全になったかな? おじさん心配だよ〜 >>353 定義されてない例外が起きるなんて誰か言ってるか? >>350 は全ての仕様違反に対して例外が定義されてるわけではないって話だが まあ、例外定義どころか仕様違反ですらないのに例外が発生しないとかいう人もいたが 普通のcssなら style="width:calc(計算式)"みたいな計算できますが、 ASP.NETのStyleでも同じような事できますか? コントロールのStyleプロパティなら、基本的にはたぶんそのまま表示されるだろうから 普通にブラウザ依存なんじゃないかな asp.netで .aspxファイルの中に記述した <script type="text/javascript"> var v = '<%= c_sharp_var %>'; </script> でC#からJSに変数を渡せますが、この部分を別のJSファイルに分離すると、 上記の文字列は単に文字列として解釈されてしまうようでC#の値を取得出来ませんでした。 どうすれば良いでしょうか? >>370 >この部分を別のJSファイルに分離すると、 このあたりをもっとわかりやすく言ってほしい >>371 それは簡単で、 プロジェクトにJavaScriptファイルを追加して、.aspxの中に書いていた JSのコードをそのファイルに移動するだけです。 ファイルは、.aspxファイルの冒頭で読み込む設定を追加します。 これだけです。 >>370 jsファイルもasp.netで処理できるようにするか・・・普通js側でREST呼び出しでJSON受け取るのがいいんでしょうね。めんどくさいケド aspxにjavascriptのグローバル変数を作って、サーバで値埋め込んで返すんだ (言わせんな恥ずかしい) >>374 先輩、ASP.NETこれからもコーチお願いします。 asp:DropDownList をIE11で開く場合、一番末尾のアイテムが選択されている場合に、 再度ボタンをクリックして開くとウインドウが上方向に開きます。 これを、常時下方向に開かせる手法を教えてください。 自前のDropDownListを作るしかないでしょうか? IEの仕様なんだから無理でしょ 押したら一番上選択したら? $('#sel').mousedown( function() { $('option:eq(0)',this).prop('selected','selected'); }); レスありがとうございました。 >>377 せっかく教えてもらったのですが、内容が良く分かりません。 asp:DropDownList に、mousedownイベントのイベントハンドラー関数を関連付ることは出来るのでしょうか? 実際にやってみたのですが、出来ませんでした。私のやり方が何か間違ているのかもしれませんが。 横からだが >>378 >>377 はクライアント側のスクリプトだぞ IEの仕様ということはクライアント側の話だから、サーバ側で操作できない だからクライアント側のスクリプトで操作すれば、って話 >>379 サーバー側でmousedownなんて有るのか? ドロップダウンのOnChangeでPostbackかかって、 スクロール位置が上に戻るって話じゃないよね? (それならASP.NETがスクロール位置を保持する機能あるけど・・) とにかく質問の日本語があやふやで、混乱する。 いやたぶん、IEのselectの表示の仕方の話だと思うが ぶっちゃけASP.NET関係ない IEだとDropDownListが上に開く場合があるから下に開きたいんだろ >>385 ASP.NET MVCがオープンソースなんだよね。 フレームワークがLINUXで動作するようになるらしいね。 いつだろう。 でも、モデルクラスで使う、DataTableなど、System.Dataなどのクラスは使えるのかな。 >>388 本当か。 でもLinuxでASP.NETなんて聞いたことが無い。 >>389 VisualStudioCodeで検索。 少なくともMacで動いてるのはみた。 >>393 コアだけなので、List<T>クラスなどの基本クラスは使えませんってことないよな Commandオブジェクトも使える?? Asp.net+MVC+EFが動くようにするのが目標みたいなので基本的なクラスは使えるようになるんじゃないの? >>395 WINDOWSフォームアプリが動作しないんだよね。 それ以外は全部いけるのかな。 ASP.NET ALL IN ONEだったっけか? その思想から、WEBフォーム(ASPX)も動作してくれるかな? WINDOWS SERVERが要らないのはうれしい。 >>397 あくまでも、ASP.NETだけだろ。 というか、ここ、ASP.NETスレッドじゃなかったっけ。 GNOMEとかで、WINDOWSフォーム動かされたら、WINDOWS自体が売れなくなってしまう。 >>398 俺馬鹿だから良く分からん。教えてくれ。 LINUXやMACでASP.NETが使えるけどWEBフォームアプリ動かないのか? だとしたら、何に使うんだ?フォームアプリ以外を作るのか? >>399 0点(>>398 を隅から隅までよく読みましょう) >>399 とりあえず目標はMVCじゃね WebAPIとか最近のはもう動くみたいだし >>400 読んで分からないから聞いているんだろ。 俺より馬鹿なのかよ。教えてくれよ。 基本的な情報も読んでない人が多いな http://www.atmarkit.co.jp/ait/articles/1412/11/news125.html .NET core5はasp.net 5とwindows store appが対象 「ASP.NET 5は.NET Frameworkの基本クラスライブラリに含ま れているSystem.Webアセンブリと、これと強く結び付いているIISへ の依存を断ち切ることで、IIS以外をサーバーとして動作できるようになっている」 「ASP.NET 5にはASP.NET MVC 6(Web APIやWeb Pagesを含む)/SignalR 3/Entity Framework 7 などが含まれるが、System.Webアセンブリに強く依存するWebフォームは含まれない (ASP.NET 4.6には含まれる)。これはつまり、従来のASP.NETアプリはASP.NET 5ではなく、 ASP.NET 4.6でサポートされるであろうことを意味している。」 .NET Framework4.6ではWeb formsは使えるが そのsubsetである.NET CoreではWeb Formsは使えない、ということだと思う .NET Coreを使うLinux, Mac上ではMVCでの開発となるんだと思う。 Linux, Macでも.NET Framework並みに高機能なMono上ならWeb Formsも 動くようになるかもしれない。 Monoはバグ多かったから俺はもう.NET Core以外使う気がしない 公式の英語の情報も読むべし .NET Coreの全体のテストカバレッジは57%くらいと書いてある 同じasp.netでも.net Framework, Mono, .NET Coreのどれの上で 動かすかで変わってくるから混乱しやすいな >>394 .NET Core5に何が含まれるかここでわかる https://github.com/dotnet/corefx System.CollectionsがあるからList(T)は大丈夫でしょ Collectionsなかったらまともにコードかけないし >>403-405 わー、ありがとう! いずれは、LINUXでASP.NETゑブアプリを動かしたいなあ。 ASP.NET 5 Schedule and Roadmap https://github.com/aspnet/Home/wiki/Roadmap ASP.NET 5、は2016年Q1リリースと書かれている。 遅くともあと6か月以内に出るということだね あと、.NET Coreもリリース待ちで テストカバレッジが57%程度、と。 さらに、Katanaもリリース待ちかな? これも2016年Q1ごろには出てくるかな? KatanaはGit Hub見るにあまり活発に見えない LINUXで、ASP.NETが動作するようになった場合、 C#コードから、LINUXのコマンドも引数をつけて実行できるかな。 もちろん、LINUXのファイルシステムにアクセスして、ファイルを取得することもできるよな。 まったく同じクラス群で対応されるのかな。 結構楽しみだ。 CentOSで、ASP.NETができるのか。わくわく。 PHPやRubyと同じ条件(win server無し)で動かせるとなれば 最強の生産性を誇るASP.NETが1番人気を得るのは必定 >>411 まだ良く分からん。 linuxでasp.netが出来るようになったら いまのwindows版asp.netで出来ることはlinuxでも同じように出来るん? iisサーバーじゃなくてもええの? そりゃ今のと同じように出来なければ、asp.netが出来るとは言えんだろう つまりWebフォームが動かんasp.netなど認められん まあOWINでSystem.Web系を再構築すれば行けるんだろうけど Webフォーム需要はないのかねぇ ん? じゃあWebフォームが動かないと言う情報は何の事やねん? >>412 せっかく貼ったのに、403以降のリンク先くらい読みな .NET Coreはsubsetであり、.NET Frameworkより機能は少ない。 つまり.NET FrameworkがあるWindowsより機能は制限される。 その典型が、Web Forms OWINの技術でWeb Serverは好きなものが使えるようになる >>413 Internet siteならWeb Formsは需要はあまりない。 ポストバックでパフォーマンスが落ちる。大規模サイトに使えない UIを完全にコントロールできない、という欠点もある 不特定多数のデバイスに対応できない 社内向けシステムならどうせWindowsでやるんだから Web Formsは.net Frameworkでだけ動けば十分だと思う >>414 System.Webは切り捨てようって言う方向だって話だろ 再構築しようと言う話は聞いたことが無いから出てないんだろう >>415 Webフォームが遅いのはポストバックのせいじゃなくてビューステートのせい 今のコントロールはビューステート完全には殺せないしなぁ 自作のコントロールだけ使えば完全にhtmlを制御できるけど まあそれならWebフォームじゃなくても良いからなぁ コントロールで機能まとめてhtmlレンダリングさせるって考え方は良いと思うんだけどなぁ すくなくともMVCのhtmlヘルパーなんかよりは筋は良いと思うけど もう全然分からん。誰か初心者向けに解説文を書いてくれ〜 >>417 ポストバックもビューステートも密接に関連してるでしょ MSのエバンジェリストがポストバックが性能落ちる要因と なってると書いてたよ >>418 本よりも動画のがわかりやすい YouTubeにいい解説動画たくさんある >>419 デカイviewstateをpostbackするから遅くなりがちなんでしょ viewstate不要なコントロールをしっかり切ればたいてい問題ないけどな きちんと分かってない人はWebFormsは、重い、だってエバンジェリストが言ってたから、で思考停止するかもぬ MVCがIISなしで動けば言うことない webフォームはwindowsだけでもいいよ >>419 >MSのエバンジェリストがポストバックが性能落ちる要因 URLプリーズ >>422 英語に決まってるだろ IT業界で英語を避けて新しい技術を学ぼうなんて無理だ >>423 忘れた。日本語の書籍も海外サイトのリソースも色々 みてるから誰の記事かはもう覚えてない。 ただ仕組み考えれば真実とわかるだろう 420の人もかいてるように、Web Formsは必要のないデータも 大量にやり取りするから、無駄なデータが流れる。 サーバ側のCPU負荷もあがる 複数のUIを変更した後に送信(post)したいような処理でも、 Postbackだと何度もサーバにリクエストが飛んでしまう処理もよくある。 だから大規模サイトではWeb Formsは向かない。 リッチなUI、高い開発生産性と引き換えに、performanceは落ちる トラフィック多いサイトはMVCでやるのが定石 MVCはブートストラップの似たような見た目になりがち みなさん、レポート関係ってどう出力してますか。 DataTableあたりから、情報を加工して、最終的にはpdfとして出せればいいなと思うんですが。 やはり、レポート専用オブジェクトを自作するしかないんでしょうか。 .netにも、クリスタルレポートとかあったように思うんですが、 ライセンス気にしない無償のがいいです。 >>427 たとえあったとしても、.net coreから外されたら辛いから、 自分で実装しようと思う。 .NET Core途中でブン投げないかが心配だな WinFSの時みたいに 所詮今あるもののサブセットでしかないんだから、投げることはないんじゃない Open Sourceだし誰かしら開発を続けるでしょ それとGitHubみたらそんな心配がないくらいに活発に 開発が続いてるのがわかるはず MSがOpen Source化を止めない限り大丈夫 asp.net 5ではフレームワークを.net framework 4.6 と.net core5から選択出来るみたい frameworkはレガシィサポートで今後の.netは.net coreに統一されるのか .net coreがサポートするのはasp.netとUWPだけか ほんとにLinuxやmacでUWPが動くのか懐疑的だが いずれにしてもwindows formsとWPFは今のバージョンが最終版になりそうだ しかし、どうして、MSは、ASP.NETを、LINUXでも動作せられるようにしたんだろう そりゃあIISとかwindows serverに固執してたらシェア縮小で死ぬのを黙って待つだけだからな asp.netを普及させてPHPやrubyと同レベルの選択肢にしたい そしてあわよくばAzureに客を引き込んで稼ぐのがmsの生存戦略 >>435 >Azureに客を引き込んで稼ぐ これが怖いな。 ある程度の機能を、asp.netで使わせておいて、のちに革新的な機能を開発して、 それを使いたければ、windows使えよってならないだろうかと危惧する。 たとえば、sqlserver接続機能、entityモデル定義と実装機能も使えるんだろうか。 最初は無料でひきつけておいて、あとから金を払うようにさせる手法なんて、常套じゃないか。 その一方で、本当にオープンソースなフレームワーク、phpなどが廃れていって、 asp.netが生き残ることになれば怖いことになる。 まるで外来生物が生態系を乗っ取るかのような。 >>432 選択できる、という表現はちょっと違う。 asp.net5でFrameworkに依存しなくなった。 Microsoftはサードパーティ含めて色々なFrameworkが 出てくると予想している。 ちなみにWeb Serverにも依存しないようになった。OWINのおかげ。 .NET Frameworkはレガシーではない。フル機能版が.NET Framework Subsetが.NET Core >>433 MSは簡単に昔のテクノロジーへのサポートを切らない。 WPFやWindows Formsのサポートは継続 >>435 Rubyなんて海外ではもう人気なくなってきてるよ PythonやPHPよりずっと下 RubyはRails専用言語みたいな位置づけになってる 多少機能が少なくても新規開発は.NetCoreがサポートする範囲で作るのが主流になりそうな気がする MVCやweb api,signalrのほとんどの機能は使えそうだし 現状IISで動かしていても安価なLinux運用は将来選択可能にしておきたいだろう >>440 IISとLinuxを同列にするのはちょっと違うんじゃね 結局のとこIISがネックだってことは、つまりWindowsのライセンスがネックだって事だろう シェア回復だけなら、Windowsサーバ系無償化とCAL廃止って作戦もある気はする vs 2010から、vs 2015 communityを使い始めるようになりました。 デフォルトでは、ダークグレイの背景色になっていますね。 背景色が変わるだけで、違和感覚えません? MSのことだから、単にオシャレというだけでなくて、何か生産性のために意図しているのだと思うんですが。 >>442 asp.netで質問するより vs2015スレで聞けば? 俺は好きな色だな asp.netで動くシンプルなcmsある? 左に見出しの一覧表示ができてクリックすると本文にジャンプ出来ればいい webformアプリでform上に browser.navigatorだっけ?を貼り付けて 簡易ブラウザみたいなサイトを作ったとしたら、それはクライアントサイド、サーバーサイドのどっちに負荷がかかるの? JSからC#へ文字列を送って、C#で加工してJSで受け取りたいのですが、 JSで $.ajaxでPOST C#側で受けとっけ加工しreturn という手順で良いでしょうか? C#側の実装が分かりません。ヒント教えてください。 >>446 C#っていうかサーバ側でASP.NETの話なら 普通にWEBサービス(.asmx)つくって、メソッドにScriptService属性付けとく 基本的にはこれだけで出来るはず >>447 ありがとうございました。出来ました。 ちなみにメソッドにstaticを付けると出来なかったのですが、 何故でしょうか? >>448 ScriptService付けるのはメソッドじゃなくてクラスだった asmxの静的メソッドはWebMethod付けても公開されないっぽい 逆にWEBページ(aspx)のメソッドをWEBサービスで公開するには静的メソッドじゃないとダメだったり 詳しい理由は知らん >>449 ありがとうございました。staticの有無で動作が逆なので、 ややこしいですよね。 GridViewでborder幅を ┏━┯━┳━┯━┓ ┃ │ ┃ │ ┃ ┃ │ ┃ │ ┃ ┗━┷━┻━┷━┛ みたいに部分的に線幅を変える事は可能でしょうか?EXCELみたいに。 ググッた限りでは出来そうにありませんでした。 >>452 レスありがとうございました。 試してみたのですが、良く分かりません。 それとは別に、 □□ のように2列の段組みをしたいのですが、ASP.NETの場合はテーブルを使う手法と CSSを使う手法のどちらが一般的ですか? レスポンシブデザインを希望です。ぐぐっても情報がありませんでした。 テーブルとCSSは相反する要素ではないわけだが まあ、レスポンシブかどうか以前に、レイアウト組むためだけにテーブル使うのは良くないって流れはあったが ググル前に基本的な事を勉強した方が良いんじゃない とりあえずASP.NET以前の話だから >>453 レイアウト目的でテーブル使うのはもう時代遅れ。 レイアウト用にテーブルは使うべきじゃない。 SEOの視点でみてもレイアウトにテーブル使用は× 452じゃないけど。 Web FormsのコントロールでUIを細かく制御するのは できないと思う。 その弱点を克服するためにはASP.net MVCを使うのが定石 ASP.net MVCではUIを完全に制御できる。 >>455 >Web FormsのコントロールでUIを細かく制御するのは >できないと思う。 まあ、細かくのレベル次第なんだけどね グリッド系コントロールでカラムごとにクラス指定するぐらいは出来るぞ UI系は結構こまかい注文が出たんだろうなぁ。わりと頑張ってる (その結果がテンプレートでHTML直書きという本末転倒さなわけだが) MVCはUIを制御と言うより、HTMLを制御ってレベルの細かさだと思うわ まあそれでもhtmlヘルパー?何それ?コントロールとどう違うの?って感じはあるが ASP.net MVCではWeb Formsのコントロールが使えないわけだけど、 このコントロールだけはないと不便、必須だっていうコントロール は何かある? >>456 出来合いのコントロールをソース追ってまで細かくいじろうとしたことないな Visual StudioのUIから変更できないところは潔くあきらめてる。 具体的にどういった手法でクラス指定してる? 受託開発とかだと注文うるさそうでかわいそうだ >>457 別にコントロールのソースとか追わんでも、コントロールの機能でサポートされてるぞって話だが >具体的にどういった手法でクラス指定してる? 単純な方法なら、VSのデザイナから列の編集で該当する列のプロパティいじるだけだが visual studioで拡張子 .json ファイルに javascriptコードを入れるとjavascriptと認識されずにエラーするのはvisual studioの仕様ですか? { "data":123} はokデスが var a={ "data":123} と書くと エラーメッセージ出ます。 ASP.NET関係ないしスレ違いだな jsonってデータフォーマットだからもともとそう言うものじゃないのかね 今だとRFCの定義あるはずだから気になるなら調べてみたら スレはここで問題ないよね。 分からないなら答えるなよ。 そういうのが本当のスレ違い。 なんでjsonにjavascriptコードを書くんだよ VSに文句があるならこっちに行けば? Visual Studio 2015 Part3(c)2ch.net http://peace.2ch.net/test/read.cgi/tech/1443285840/ 過去レス読んでも良く分からないので教えて。 ASP.NET5というのを入れればLinuxのApacheサーバーでASP.NETのWEBサイトが作れる? Visual StudioからWEBサイトの発行も出来るの? ヨロしく >>463 https://github.com/aspnet/Home 未経験者はまずWindowsの環境でasp.net 5 を試したほうがいい。 上の Getting Started with ASP.NET 5 and DNX を読めばいい。 正式版のリリースは2016年第1四半期、つまり来年の3月。 >>464 有難うございました。早速試してみます。 ASP.NET 5は、RC(Release Candidate)が出ていたんだな RCがでたならもうテストしても良さそうだ >>465 464のダウンロードリンク切れしてた。 こっちからのが良かった https://www.asp.net/vnext Linuxの.NET Coreはまだ移植が終わってない。 試すならWindows版からというのはそういう意味。 Linuxでの運用はドキュメントも充実してないから現時点では人柱。 Button1に OnClientClick="func();return false;" としておけば func()を呼び出してPostBackは発生させないように出来ると思うのですが、 そのページをスマホで開いてボタンを押すと何故かPostBackが発生します。 パソコンではPostBackは発生しませんでした。 そういう経験ある人いますか?対策が分かれば教えて下さい。 せめてスマホの種類とかブラウザとか書けないのか つかポストバック不要なら、そもそもASP.NETのボタンコントロールである必要あるのか疑問だが Desktop, Mobile両対応なサイトで、ボタン、テキストボックス、ラジオボタン などのコントロールなど使て、PostBack不要ならVisualStudioのASP.NETの どのテンプレート使えば良いですか? 今は良く分からないのでASP.METの WEB Formsと言うのでやっています。 追加ですが、処理はクライアントサイドのJavaScriptのみで処理すると言う前提です。 <asp:Button>じゃなくて普通のhtmlの<button>で良いんじゃないかって言う事なんだが >>471 <button>でやるとPostBackしないのですか! 知らなかったです。さっそく試してみます。 それと<asp:TextBox>でENTERを押してもPostBackが起こって困っていました。 これもinput textなどでやると解決するのでしょうか。とにかく試してみます。 有難うございました。 質問です v.s.2015 community editionをつかっています。 webフォームプロジェクトで、 web.confに、次のようにカスタムセクションを定義しました。 コードからアクセスして使います。 しかし、V.S.で、web.confを開くと、「メッセージ」ウィンドウ(ビルド+IntelliSense)に、 (i)スキーマが見つからないという情報が上がってきます。 要素 'TESTSECTION' のスキーマ情報が見つかりませんでした 要素 'add' のスキーマ情報が見つかりませんでした 属性 'key' のスキーマ情報が見つかりませんでした 属性 'value' のスキーマ情報が見つかりませんでした <configSections> <section name="TESTSECTION" type="System.Configuration.AppSettingsSection"/> </configSections> <TESTSECTION> <add key="A" value="a"/> <add key="B" value="b"/> <add key="C" value="c"/> <add key="D" value="d"/> </TESTSECTION> ビルドはできるし、意図したコードからのアクセスもできるんですが、 このインフォメーションが気になります。 何をすれば解消するんでしょうか?? VSがどっかにスキーマ定義ファイルもってたはずだから、そこに追加してやれば消えるだろうけど >>475 レスありがとう。 このあたりがヒントになるかと思ってますが、今日はもう疲れましたーーー http://stackoverflow.com/questions/179927/how-to-resolve-could-not-find-schema-information-for-the-element-attribute-xxx いちいち、valueや、keyの型(文字列型?)を指定する必要があるのは面倒くさいです。 でも、コードからの必要な情報は取得できるんですよ。 Intellisenseが「わからんぞ!」って怒っているようです。 >>474 クラスで言うところのフィールドの型定義のようなものなのかなと思っています。 データベースで言えば、列情報に相当するのでしょうか。 そして、この場合は、add,key,valueがそれぞれなんであるのかの定義のようです。 多分、addは、keyとvalueを含有している要素であり、 keyとvalueは文字列型の属性ということを指定する必要があるようです。 でも、文句を言っているのは、Intellisenseのようで、デバッガもコンパイラも文句なしに通ります。 C#お得意の型類推でもしているんでしょうか。 >>475 ともに文字列型のkeyとvalueの属性値を持つビルトイン要素(定義不要のやつ)のようなものってないのかなあ。 ちょうどディクショナリ型の要素。 ここにはASP.NETの専門家の人が多いと思いますので教えて下さい。 VisualStudio2013でWEBサイトをftpで発行しました。 発行先はlinux上のapacheサーバーです。その文字コードはutf-8です。 Windows側はsjisなので、フォルダ名やファイル名に日本語が含まれていると 発行はできますが、linux側で確認すると化けています。 文字化けをさせないように発行する方法がありましたらヒントを教えて下さい。 ファイルシステムでのファイル名の問題なら そのlinuxで日本語のファイル名が使えるのなら、FTPの問題じゃね ファイルシステムの文字コードなんて通常意識する必要はないが、NTFSはSJISじゃなかったはずだがな ソース中に記述されたファイル名の問題なら、ソースをUTF-8にすれば良いんじゃね FTPの転送モードでいらん変換されてる可能性もあるな まあホントに文字コードの問題ならファイル名以外の日本語も化けるはずなんだが いずれにしても、Windows以外で使おうかってシステムのファイル名に日本語使おうと思う勇気には感嘆するわ つかVS2013のデフォっていまだにSJISなのか? >480 レスありがとうございました。 >ファイルシステムでのファイル名の問題なら そうです。ファイル名が化けます。 >そのlinuxで日本語のファイル名が使えるのなら、FTPの問題じゃね Visual StudioでFTPの手段で発行しているだけなので、他のFTPソフトを使っているわけではありません。 >つかVS2013のデフォっていまだにSJISなのか? たぶんそうだと思います。 FTPの問題でしょう UTF-8対応の使えば? まあ、UTF-8にしても apacheでまたいろいろありそう >>483 性能じゃなくて機能だと思うが FTPが問題だとしても、その原因がVS側なのかlinux側なのか判断できないわけだが サーバとクライアント両方が日本語ファイル名に対応してないとダメなわけだから WebFormプロジェクトを作成すると PC向けとモバイル向けサイトが出来ました。 でもモバイル向けサイトにSite.cssの設定が反映されません。 原因が分かる人いますか? >>485 最低限、何を使って作成したのかぐらい書けないのかね Webサイトを作ろうと思うんだけど、ASP.NETってまだ現役ですか? AWSを使う予定です ひさびさにASP.NETのMVCっていうやつ使ってみたら、ASP.NETと全然違かった・・・ でもこれ面白そうだな >>490 どっちもc#だし似たようなもんだろ。 何が違うと感じた? >>492 言語は同じ言語使えばそりゃ同じだろ C#とは限らんけど フレームワークとしてはだいぶ違うだろ まず画面遷移の方法から全く違う 以前はWebFormを使ってたんだけど、MVCとは全然違かったよ webformの方がシンプルで分かり易い。 mvcなんて何がいいの? 変なhtmlが吐き出されないこと jsが盛んになったから、mvcが盛り上がったんだと思う とは言えASP.NETは技術的には一番革新的なものだった 他に類似の技術がないから主流にならんかっただけで MVCは15年前の旧来のASPの体系に戻して作ったような感じ JAVAもPHPも全部これ系で世の中が動いてきたから仕方ないんだろうけど 結局開発者が生HTMLとクライアントスクリプト意識しないとダメだからなぁ HTMLヘルパーとか使うぐらいなら、WebFormのコントロールで良いんじゃないかと思う事もある もうちょっとMVCと綺麗に融合すればいいフレームワークになると思うんだが HTMLの見た目なんて、ミニファイするのが当然になってどうでもよくなる気がするし Javascriptがすでにそうだしな >MVCは15年前の旧来のASPの体系に戻して作ったような感じ どういう事よ。 MVCはWebFormよりも古臭い仕様なの? >>502 技術的新しさの面でいえばその通りだ MVCなんて昔からあるフレームワークだし ASP.NET MVCに限ればWebFormよりは新しい フレームワークと言うかMVCという概念が結構古くからある それをWEBアプリに適用させるようにまとめ上げて今のMVCなフレームワークがあるって感じじゃね 個人的感想で言えば、Vの処理に限れば旧ASPと同じ感覚に陥るのは確か まあやる事が用意されたデータからHTMLに変形するだけの話だからな あとは昔はレンタルサーバーがASP.NETに対応していないことが多かった これが敷居を上げる原因の一つ MVCの質問はここで大丈夫ですか? Partialで部分ビューを表示したいんですが、Shared以外のフォルダにViewをおいた場合は どうやってViewとControllerを指定すればいいのでしょうか? ASP.NETだとJAVAサーブレットみたいな薄いフレームワークのやつって選べないの? MVCも規約でガチガチのフレームワークだし MVCはwebプログラム初心者向きじゃないね ネットの情報も本も初心者お断りのものしかない FormsってWindow Formsやってた人向けでしょ? MVCは裏でいろいろやってるのを理解しないと難しいよなぁ それが便利なんだけどね PHPなら初心者向けから各種フレームワークまで情報豊富だがMVCだと100分の1以下だろう 最初にほとんど情報のないMVCで入門するのは困難を極めるだろうな MVCが裏でやってるのって、URLルーティングとモデルバインドぐらいな気がするんだが 裏でやってる事はWebFormの方が多いだろ MVCもWebFormも、クラス設計するような人は難しい コーディングするだけの人ならMVCはFormsより簡単 VならVの、MならMのロジックだけに集中できるから >>497 WebFormsのほうが複雑だよ WebFormsだと出力されるhtmlがコントロール不能になる MVCの利点 htmlを完全にコントロールできる 処理性能が高い Linux, Macでも使えるようになる MVCにはpage処理のコントロールなくて不便だと思ってたけど MVCで使えるページのライブラリとかもあるんだな もうWebForms要らないな >>514 情報が少ないのは英語できない人だけ ASP.net MVCでてだいぶ経つし 英語のドキュメント、チュートリアル、動画はたくさんある。 Java, Python, PHPなどフレームワークが乱立してる言語より ASP.net MVCのがはるかに情報も豊富だよ >>512 裏でコントローラーがいろいろやってるのはWebFormsの方だ >>517 日本で全く普及してないことが問題 使う機会がない >>518 うちでは普通に使ってるけどな、かわいそうに。 ASP.NET MVCで情報すくないって、どれだけの情報あれば気が済むんだろう 使う機会がないならなぜこのスレに居るんだろう あ、ここMVCスレじゃないからかw WebFormは使うけどMVCは使わないのね ASP.NET MVC5実践プログラミング読み始めたがものすごいむずかしいぜ・・・ みんなすげえよ・・・ >>521 Webに全く馴染みのなかった人はそうなるだろね >>522 まさしくその通りで、もっと根本的なところがあかんと思って Webを支える技術って言う本も一緒に買って平行して読んでるw まともに理解できるようになるのにだいぶかかりそうやで・・・ >>521 あの本はweb初心者は相手にしていない cakeなりRailsなりフレームワークをマスターしてるweb開発の心得のあるC#使い向けの本 C#のPCアプリだけできてもweb未経験だと無理 PHPでHTTPの基礎を学んでフレームワークも学んでから出直せ >>521 最良のTutorialはMicrosoftの英語サイトだよ 動画もサンプルコードも揃っている 英語苦手な人は動画は無理でも 辞書引きながらsample codeを動かすこと位できるだろう このsampleがわかりやすい ttp://www.asp.net/mvc/overview/getting-started/introduction/getting-started あと、開発環境のDB SQL ServerはLocalDbよりも、SQL Server 2014 Express with Toolsのがわかりやすいよ LocalDbはどう管理していいかわかりづらいし、使い辛い。 最初からExpress使うのがお勧め >>524 >>521 MicrosoftのTutorialなら C#の経験あって、html, http, SQL Server の基礎がわかれば理解できる。 戸惑うのは、MVCよりもむしろEntity Frameworkだと思う。 どういうModel(class)を書いたらどういうテーブルが出来上がるのか、とか どういうテーブルのrelationになるのか、とかわからず戸惑った。 もしEntity Frameworkが理解不十分なら WPFやWindows Forms環境でいいからEntity FrameworkとSQL Serverの基礎を 先に理解しておいたほうがいいと思う。 WPFならWeb appsよりも細かいエラーコード出るし理解しやすい。 >>528 相変わらず? EFは以前から必須ではないがよくできたORMだし使わない理由もない。 SampleはEFで書かれることが多いしEFの基礎知識ないと MSのドキュメントすら読めない。 521です。皆さんアドバイスありがとう。 とりあえず初歩すぎるけどhtmlの強化から始めてみるよ。 使いこなしてる人超人やでこれ >>530 Database Firstも悪くないね。挙動を理解しやすい気がする。 MicrosoftはCode First推しみたいでsampleはcode firstばかり DIYのポリシーからいってcode firstを推してるそうだよ code firstはModelのclassの中でannotation指定すれば、client sideの Validationからserver sideのテーブル作成までできてしまって美しい 、ということみたいだ でもCode First Migration機能は要らないなと思った。 あれMySQL Server環境だとうまく動かなかった。 >>529 ASP.NET MVCとEFは直接関係ないのに、EFの知識ないとMVCのチュートリアルすら進まない ハンバーガー買うとポテトを勧める。MVC使うとEF勧める これをセット販売と言わずして何と言うとw >>532 マイグレーション要らない説には同意するけど、要らないならやらなきゃ良いだけ 最近なら既存のデータベースからコードファーストとか言う手法もあるぞ なかなかお勧めだがコードファーストの意味を問いただしたい気はするw >>533 チュートリアルで必要なEntityFrameworkの知識なんて大したことないやろ >>533 好きなORMに差し替えて使う事だってできるし、無料なんだから セット販売なんて言葉は合わないでしょ ASP.net MVCは使ってるようだけどORMはなに使ってるの? 既存のDBからModel作るのはアドオンみたいなのを使う気がしたけど、 名前なんていうんだっけ? >>534 526にあげたTutorialはリレーション使ってないからシンプルだね >>535 じゃあセット販売じゃなくて抱き合わせ商法にしとくわ 念のために言っとくがEF使ってるし、けなしてるわけじゃないぞ MVCの理解にEFは必要ないから、EF関係つかわずにMVCだけを理解させた方が良いのと EFはEFでもっと情報を充実するべきだと思ってる ま、俺はMVCよりWebForm派なんだが 既存DBからのコードファーストは6.1以降の機能らしい Code First to an Existing Database https://msdn.microsoft.com/ja-jp/data/jj200620 つか6.1以降のVS用のツールの機能だな、正しくは >>536 WebForm派だって表立って言うには、かなり勇気がいるよね、このご時世。 >>537 MVC用のコントロールが出来てWebFormが見直され巻き返しが来ると信じてたんだが タグヘルパーとか、MVCはますますHTMLと密着していく方向なのかねぇ JavaScriptですらHTMLと疎にしていく方向なのに >>536 完全に同意だわ チュートリアルは肝心のコントローラとビューにフォーカスすべき EFなんて後付けの抱き合わせでしかない ましてやEFを一番に強調するなんてユーザーのニーズを考えないオレオレ解説でしかない EFが自動生成したモデルに対して、パーシャルでバリデイト追加するんだよ。 あれがかなり便利。モデルをいちいち書いてバリデイトを追加しなくていい。 DBカラム追加時のパーシャルだからモデルだけ更新できる。 モデルをhtml持って行けばレイザーエンジン内ではhtmlタグに 自動バインディングしてくれて、jqueryバリデイトも自動で有効になる。 >>539 チュートリアルやってないでしょう? 最初の方でDB使わない最小のパターンも ちゃんと紹介されてるよ 固定の文字列をViewに渡すようなコード。 DB使わないWebアプリケーションほぼあり得ないんだから EFをチュートリアルから除けっていうのは無理あるよ もうDataSetとか欠点だらけで相手されてないんだし 諦めてEFを勉強するしかない ASP.NET MVCをやるならEFをやるべきってのは分かるけど EF推しが新規参入者をASP.NET MVCから遠ざける十分な障壁の役割を果たしているとは思う ef初心者です。 efと言うのはgui使ってdbの設定とか操作をやる感じと言う理解で良いですか? >>542 そんな新規参入者は適正ないからやめて正解 >>542 なるほど、EF推しが有効にはたらくこともあるんだね >>543 GUIでDB操作するための物ではありません EFはDBの設定を行うものではありません(EFの動作に必要な範囲の設定は出来るものもあるだけ) そう言えば、EFのスレってここにもム板にもない気がするな 2chはすぐ過去ログ見れなくなるし 新しいスレッドはopen 2chに作る方がいい 変な広告も強要されないし、好きな専用ブラウザ使える。 open 2chのプログラム板とasp.net スレッド プログラム_op http://toro.XXX2ch.net/tech/ URLのXXXをopenに置換してアクセス ASP.NET part1 ttp://toro.XXX2ch.net/test/read.cgi/tech/1368724408/ URLのXXXをopenに置換してアクセス >>547 じゃあefはそもそも何するものですか? 三ヶ月くらい気になっていますが分かりません。 20文字くらいで教えて下さい。 >>550 DBにアクセスするオブジェクトを支援する WebFormプロジェクトを作成すると、 Site.Master Site.Mobile.Master を使う Default.aspx が作成されますよね。 そこに新しい WebForm1.aspx を追加する場合、同じくこの二つのMasterファイルを継承するように設定したいのですが 方法が分かりません。どういうふうにやるのでしょうか? >>553 ちゃんと環境書け 新規追加のテンプレートにマスターページ付きのWEBフォーム見たいな項目あったはずだが ASP.NETのC#で大きな配列などを確保して利用する場合、 同時に10人が接続したら、その10倍の大きさのデータがサーバー上のメモリに確保されますか? もしそうなら、何か一ヶ所にデータを保持するような手法はありますか? dbに格納して一気に取得するんじゃなくて必要なものをfetchして都度都度処理するとか 何がしたいかわからんけど Applicationレベル変数とか、static(Shared)変数とか、キャッシュとか、そういう話の気もしないでもない WebFormプロジェクトを作成した場合、作成の仕方によって Global.asax と言うファイルが有る場合と無い場合がありますが、 これは何ですか? >>559 アプリケーション全体の変数やイベントを定義するところ >>560 プロジェクトの作り方によってGlobal.asax が生成されたりされなかったり する理由はなぜですか? そりゃプロジェクトの作り方が違うからだろ プロジェクトによってはデフォルトで何かしらのコードが必要だから生成されてるんじゃね そのプロジェクト作るソフトの方に聞けよ コードビハインドのクラス(aspx.cs)の、インスタンスはどのタイミングで破棄されるのでしょうか? (インスタンスはどの単位で作られるのでしょうか?) 1. そのページにリクエストがあるごとにインスタンスが作られ、破棄される? 2. インスタンスはシングルトン? (アプリケ-ションが起動してインスタンスが作られたら、すべてのリクエストで一つのインスタンスが共有される? (ASP.NET MVC の Controller クラスのインスタンスと同じ) 既存のコードを眺めていて、 コードビハインドのクラスのメンバ変数(インスタンス変数)にログインユーザに関する情報等を格納している箇所を見つけたので、 もし上記が 1. だったら大丈夫だけど、 2. だったらやばいなと思って調べているのですが、 ググっても見つけられませんでした・・・ つかMVCのコントローラもシングルトンではないと思うが Visual Studioを色設定をダークな色合いにしているのだが、 ASP.NETのエディタ画面で、 <%-- コメント --%> などを表示すると、この両端の<%, %>の記号が、 Visual Studioのエディタの画面で白く光って目立つのが目障りなのだが、 灰色に変更するなど可能かな? もしかしてASP.netってRuby on Railsよりイケてる? ASPでlog4netっていうの使おうとしたら403エラーとかいうのが出た。 エラーページで以下のようなことが書いてあるんだけどよくわからん。 とくに["SITE_NAME"]とかいうのが何のことかわからん。 誰か助けて。 対処方法: ?ディレクトリの参照を有効にしない場合は、既定のドキュメントが構成され、ファイルが確実に存在するようにします。 ? ディレクトリの参照を有効にします。 1.IIS Express インストール ディレクトリに移動します。 2.appcmd set config /section:system.webServer/directoryBrowse /enabled:true を実行して、サーバー レベルでのディレクトリ参照を有効にします。 3.appcmd set config ["SITE_NAME"] /section:system.webServer/directoryBrowse /enabled:true を実行して、サイト レベルでのディレクトリ参照を有効にします。 ?サイトまたはアプリケーション構成ファイルで configuration/system.webServer/directoryBrowse@enabled 属性が true に設定されていることを確認します。 >>572 そのlog4netっていうの初耳だが何するやつ? IIS でやってるなら、フォルダへの書き込み権限がないとか、log4net の設定ファイルが間違ってんじゃね。 リリースがIISでデバッグがIIS Expressだよね? フォルダへの書き込み権限ってどうやって設定&確認するの? まさか本当に確認してないのか。 IIS でプロセスを動かすと IIS_USER だったかそんな名前のユーザで実行される。 だからフォルダのセキュリティ設定を見て、このユーザの書き込み権限が設定されているかを確認する。 注:うろ覚え すまんいま実家に帰ってて試せない 月曜にはレス出来ると思う asp.netの質問ならmsdmフォーラムのほうがいい回答が期待出来るよね 572です。 なんかプロジェクト作り直したら動いたっぽいんですが、原因がよくわかりません。 Default.aspxとかいうのを追加したといえば追加したんですがそのせい? それともGlobalオブジェクトとかいうの使うのやめたんですがそのせい? あるいはログ吐く場所を自分のドキュメントフォルダ以下にしたせい? 自分では原因を突き止められそうにありません。T△T ソースコードもない状態で他人がその疑問に答えられるとでも? とりあえず動いたので、真の原因追及は諦めます。 お騒がせしてすいませんでした。 まさに >ディレクトリの参照を有効にしない場合は、既定のドキュメントが構成され、ファイルが確実に存在するようにします で解決なわけだが >>584 もう少し分かりやすい日本語に書き換えて下さい。 urlの末尾が特定のファイル名で終わらない場合、「フォルダを見に来た」とみなす。これをディレクトリ参照と言う。 しかし、フォルダを見られることはセキュリティ上の問題から禁止されることもあろう。 その場合には「フォルダを見に来た場合はこのファイルで表示しろ」という設定を行う。これを規定のドキュメントを構成すると呼ぶ。 ScriptManagerを追加しているにもかかわらず、VSの編集画面で以下のエラーメッセージが出ます。 PlaceHolder1 ハンドルされていない例外が発生しました。 A ScriptManager is required on the page to use ASP.NET AJAX Script Components. エラーが出ていてもビルドして実行は出来るので実害は無いのですが気持ち悪いのですが、原因分かる人いますか? 環境もソースも無いし、エスパーじゃないとわからない ScriptManager を PlaceHolderの前に移動してください。 <asp:Button ID="Button1" runat="server" Text="Button" /> に対して、ボタンのIDを <%=Button1.ClientID %> -----(1) こんなふうに書く例をよく見ます。 でもこれは 'Button1' ですよね。 なぜ、(1)のように書くのでしょうか? Button1とはかぎらないのですよ。 ClientIDModeをどうぞ >>593 移動しても直りませんでした。 改めてエスパーお願いします。 別のスレで誘導されました。よろしくお願いします。 教えて下さい。 WebForm でアプリを作っています。 で。ブラウザで開いて、ページのソースを表示すると JavaScript で theForm と言う変数を作成しています。 これは form["FormタグのID"] を代入しているようです。 自分で JavaScript でフォーム上のコントロールを操作するときに便利そうに思えたので利用してみようと考えました。 この theForm は開発者が再利用してもよい変数なのでしょうか。 まあ俺ならさわらないが よいとか良くないとか、どういう基準で考えるの? >>599 どうして使おうと思ったか? ・form タグの ID をフレームワークが指定しているため自分で探すのが面倒 ・ドキュメント類には書かれていなかったが、ページのソースコードを見るとグローバル変数?のように書かれていて、再利用できそう よいの基準 ・theForm 自体がユーザによる再利用を考えて作られているか (考えててくれたらいいな) ・今後の VS のメジャー以外のバージョンアップで変数名や機能が変更されない 保証してはくれないだろうなとは思うので、同じバージョンで機能が違ったりするケースがないといいなと思ってます。 バージョンを書いてませんでした。VS2012 enterprise です。 再利用つか参照は好きにすりゃいいんじゃね。 どうでもいい話 昔、jsの変数iがasp.netで予約されてたとかいうクソアホな仕様があったな /どうでもいい話 >>600 すくなくとも公式なドキュメントにその変数についての言及はみたことがない なので、一切の保障はないだろう >>601 jsの変数なんて、後から使ったもの勝ちな気もするけど ちなみにどんな状況でiが「予約」されていたんだ? >>603 予約という言い方が悪かったな。 iがasp.netのサーバーサイド処理用として使われてるから、 scriptタグの直下でvar i=とかでいじくるとポストバック時にサーバーエラーを起こすということが2.0の頃はあったんだよ。 >>604 予約の意味はそんなに気にしなくていい。広域で使われてるって事だろ あったという事は今はないのか 標準で出力される範囲でそんな事にはなった事がないけど 詳しい条件とかわかるか? 2.0とか現役で動いてるのいっぱいあるわ >>603 ああ、やっぱりそうなのですか。。 自己責任でやってみます。 ありがとう。 >>601 js だから後勝ちになるってことですかね。 注意しておきます。 ASP.NETのWebFormで普通にウエブサイト作った場合、 Console画面は出ていないのでConsole.WriteLineはつかえませんが、 Console画面を出す方法があれば教えて下さい。 >>608 そのコンソール画面はどこに出したいんだ? >>614 そこを何とかコンソールに出したいんですが WEBサーバをそのコンソールを見たいユーザと同じセッションで稼働させれば出来るような気はする まあ、IISじゃ多分無理だろうけど、IIS Expressとかなら出来るかもしれん たんにサーバ機の画面上でメッセージ確認したいって言うだけなら ASP.NET側はファイルなりDBなりにメッセージ吐いて それ監視/表示する別プログラムをサーバ機上で走らせればいい あるいは、(ASP.NETのトレースじゃなくて) System.Diagnostics.Traceつかって 独自に表示するトレースリスナ作っても行けるかもしれん 必要ならその表示プログラムをコンソールアプリにすれば良いけど 特別な理由がなければコンソールアプリである必要性が見当たらん asp.netのサイトで24時間に一回ある関数を実行したいのだが、別プログラムにしてwindowsのタスクでやるのがいいですか? asp.netのプロジェクトのみで実現出来ませんか? アプリケーションプールを24時間で再起動するようにして Application_Startで処理とかでどうだろう まあ、俺なら素直にタスク実行させるけど アプリケーションプールは時間以外でもメモリとかで再起動するからオススメしない 素直にタスクにしろ Web APIを実際に業務で使ってる人いたりする? ASP.NETサイトのトップページは Default.aspx WebForm1.aspx などどれが良いとかありますか? 最近ASP.NET WebFormsを始めたものだけどどうやって勉強したらいいんかな いまでも赤間本と呼ばれてるのは有効ですか?大分古いみたいですが 発行するときに特定のファイルのみを発行する方法を教えて下さい。 そもそもWebFormsの何を学びたいのか 赤間本って設計技法の本じゃなかったっけ 先月からマイクロソフトが正式にCentOS上の.NETをサポートし始めたみたいなんですが、まず何をしたらよいんでしょう? CentOS 7.1(VPS)でASP.NET動かしたいです! >>629 とりあえず一連のtutorialやってみ >>631 IISでホストもできるし、KestrelってWebサーバを.NET Core自身で動かすこともできる >>629 それってCore? まさかフルバージョンの.NETは動かんよな >>633 明らかにCoreのことわかって書いてるだろ >>633 フルじゃなくても良くて、 asp.netが発行出来てiisサーバーでサイト運営が出来れば良いのだが、それが出来るようになったの? ちなみにフルの.netとフルじゃない.netの違いはなに? >>635 CoreはIISじゃなくて、Kestrel(アプリ自身でホスト)も使えるよ ライブラリも必要なものだけアプリに同梱できるから、サーバに.NETをインストールする必要がない 629-638 までを素人に分かるように解説してくれ >>639 Linux、Mac、Windowsの全てで、.NET Core(C#)のWebアプリとConsoleアプリを開発・運用できるってこと >>640 じゃあlinux vpsサーバーでasp.netが出来るんですね。 windows10のvs2015からサイトを発行出来るんですね。便利ですね。 >>641 ASP.NET Web Siteは対応してないけど >>642 それじゃあ何に対応してるの? ftpで発行するの?? >>644 asp.net mvc のサイトなら行けるのね。 >>645 普通のMVCじゃなくて、Core用のMVCらしい しかも、普通のMVCからCore用に変更しようとしてあきらめたって話がMVCのスレに出てるぞ >>645 ASP.NETでサイトって言うと紛らわしいからやめとけ >>649 普通にWebアプリって言っとけ。Web Site, Web Forms, Web API, MVCの違いわかってねーだろ。 Coreでは、MVCとWeb APIが統合されたみたい >>650 >>>649 >普通にWebアプリって言っとけ。Web Site, Web Forms, Web API, MVCの違いわかってねーだろ。 その中でサイトって一つしか無いけど。 君は何が紛らわしいの? >>652 明らかに>>645 はわかってねーだろwww そもそものWebFormsにWEBアプリ形式とWEBサイト形式ってのがあってな MVCはWEBサイト形式 WebFormsと混在可能 紛らわしいってのはそう言う事じゃないのか すまん、>>654 は MVCはWEBアプリ形式、な >>654 お前もなんか勘違いしてんな。そういう風に分類してるソース出せよ。 Monoのときは、Apache で動かすために mod_mono をインストールしたが、 Apache + mod_mono の環境に、 ASP.NET core で作ったアプリケーションを動かすことはできるのかな? >>660 Coreはライブラリをアプリに全て同梱できるから(Webサーバ含め)、Apacheとかに関係なく動かせるんじゃない? そもそもC#が使えるならWebサーバーがどうのなんて面倒なこと考える必要ないだろw HTTPソケットでブラウザから接続要求受け付けるスレッド作って、要求が来たら文字列作成したり画像データ作ってソケットで返すだけ >>662 なんでだよ。 Webサーバーとして公開するならその辺りは当然検討するだろ 普通はWebサーバを自分で一から実装しようなんて検討はしない 既存のWebサーバで検討してどうしても問題があるなら選択肢としてはあるのかもしれないが >>665 Webサーバの実装ならそりゃ大変だなwww coreはまだprevirw版だよな。 正式版いつ出るのかな? 今、WindowsのVPSサーバーを使っていてVS2015からWEB Deployで発行しているのだが、 Windowsの共用サーバーに対してもWeb Deployの方法は使えるもんなの? それともFTPなどの方法で発行するの? >>667-668 6月末に出たのは正式版じゃないの? .net coreでASP.net MVC始めた人いますか? 使い勝手とか語ってほしい >>669 Web deploy使ってないけど、たぶん使えると思う。 VPSはVirtual Private Serverで 共用サーバでありながら、利用者からは専用サーバと同じように使うことが できるっていうのがVPSの特徴だから問題ないはず。 >.net coreでASP.net MVC始めた人いますか? windowsのvisual studioでASP.net MVCのプロジェクトを作成して linuxサーバーに発行すると言う事でしょうか。 まだ出来ないんじゃないの? UbuntuでAsp.net動くこと確認して、それっきりだ(^^;) VS2015はUpdate3いれると.NET Core対応みたいだな あとは、こんなのがNuGetで用意されてる。 これいれるとVSは.NET Core対応できていそう https://visualstudiogallery.msdn.microsoft.com/c94a02e9-f2e9-4bad-a952-a63a967e3935?SRC=VSIDE >>671-672 発行という訳に違和感しかない DeploymentはcopyするだけでいいからVSからできなかったとしても問題ないね BuildまでできればOK >>671 その理由は? 発行先毎にconfigすげ替えることってあるじゃん・・・? >>675 そんなもんJenkinsでジョブ作ればいいだろ。まさかとは思うが、開発環境のVisual Studioから本番環境に直接発行してるんじゃないだろうな。 >>676 ステージングにはリリースブランチのビルドをガンガン発行してるが、何か問題でも? ステージングは本番環境じゃないだろうと 本番と同一の環境そろえてる豪勢なステージング環境用意できる人にはどうでもいい話かもしれんが >>674 これを入れると何が出来る? IISで動かしているASP.NETサイトをCentOSのApacheで動かせるのか? >>682 そのままとは言わないけど、CentOSで動く。Apacheは不要。 ただ、.NET Core対応の色々に書き換える必要あり。 一回書き換えてしまえば、WindowsでもLinuxでもMacでも動くコードになるよ。 >>682 official siteを読むように https://dotnet.github.io/ .NET CoreはLinuxやMacで動く ASP.net MVCも動く MVCが動くとかいっても、今のMVCがそのまま動くわけじゃないし WebFormはそもそも動かす気がないし >WebFormはそもそも動かす気がないし 何で? 手間が掛かるの? >iisありきの仕組みだから WebFormはLinuxで動かないの? WebFormはLinuxで動かすのが手間が掛かるの? どっちなの すくなくとも今のところ、.NET(ASP.NET) CoreではWebFormは動かない 今後動かせるようになる予定もない Coreじゃない.NETがLinuxで動くかっていう話ならまた別の話 >>686 何ができるって話だから、出来ない事、制限のある事も言っといただけだよ まあ、そう言う状況でどの程度普及するのか疑問符がつくってのもあるけど >>689 ASP.net MVC使えるようになれば WebFormsなんて使わなくなるからどうでもいい ASP.NETはイントラネット用でしか通用しないイメージ イントラでよく使われてるイメージ なぜならVB6→VB.NET→ASP.NETの流れができてるから イントラで使われてるんじゃなくて、インターネットで使われていないだけ 理由はWindowsのライセンスとレンタルサーバの選択肢のなさ 最近はAWSでも使用できるよね その場合はAzure使うんだろうけど WebFormsにはホント苦しめられたな まあ今も保守で苦労してるけど >>695 Windowsレンタルサーバー(VPS)なんて1000円位からいくらでもあるだろw >>704 1000円では無いだろ。2000円は必要 stack overflow も asp.net mvc と sqlserverだな >>700 AddType application/x-httpd-php .aspx みたいな感じ? asp.netやっている人はphpもやるの? vsでphpのデバッグってできるの? 100人くらいで製造するシステムってどんな仕組み使ってるの? >>711 本物の開発者ならvsなんて玩具は使わないだろw コードを書くのは、もちろんvi 初心者ならEmacsもありかもしれんが IIS + ASP.NET(C#) で Web アプリを作ってます。 セッションが破棄・切断されたときに実行されるイベントハンドラ?などはありますか? ログアウトボタンを押してくれれば後処理が出来るのですが そうでないときの後処理をセッションが切れたときに実行できないものかと。 >>715 あるけど、とんでもないことをしそうだから、 ちょっと教えない。 >>715 Global.asaxにSession_Endってイベントがあるにはあるが 条件によっては発生しないのであてにしない方がいい >>718 ありがとう。 そういうのがあった気が、、、と思ってましたが、やはりありましたか。 一応の後片付けをこれで実行して、残っている分は日時などで片付けられるようにしようと思います。 Windows10のVS2015Communityを使って ASP.NET CoreでWepApplicationを作成してFTPでCentOSサーバーに 送るところまではできました。 でもその後どうやればそのWebサイトが外部に公開出来るのか分かりません。 そのあたりのやり方を解説したサイトなどあれば教えてください。 .net core 1.1をcentos にガイドにしたがって入れたつもりなんだが、dotnet --info すると1.0.3になってるんだがそういうものなん? >>725 うちで試してもそうだからそんなもんじゃない ちなみにdotnetでエンターすると ああ、途中で送信してしまった dotnetでエンターすると Microsoft .NET Core Shared Framework Host Version : 1.1.0 ってでるからちゃんと1.1環境だと思われ ASPNET自体よく知らないのでとりあえずライセンス回りの確認からしてみようかと思ったのだけど ASP系でnugetとかを使う場合はnet libraryの規約で商用サービスはできませんってこと? https://www.microsoft.com/web/webpi/eula/aspnetcomponent_rtw_enu.htm とか https://www.microsoft.com/web/webpi/eula/net_library_eula_jpn.htm は use the software for commercial software hosting services. 本ソフトウェアを商用ソフトウェア ホスティング サービスで使用すること。 があってで https://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm からはこの一文が消えてるようだが、 jpnとenuで違うのかenuだけ許可されてるのかわからんが ただCORE関係とか新しめのやつは別のライセンスになっているが 人気な奴の中でもEntityFrameworkはjpのに転送されちゃうけど azureのやつだと似たような条項が provide the software as a stand-alone hosted solution for others to use と書いてあってまたよくわからない jsからwebapiを呼ぶときに配列がうまいこと渡ってくれないんですが、何かおまじないでもあるんでしょうか? WebSharperってどうなの? 使ったことある人おせーて 最近MacでもVB扱えるようになったから触りはじめたけどC#だけなのな 誰でも簡単にネットで稼げる方法など 参考までに、 ⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。 グーグル検索⇒『半藤のブブイウイウレレ』 VBFROAL66L asp.netでmongoDBに接続仕方がわからん 私たち日本人の、日本国憲法を改正しましょう。 総ム省の、『憲法改正國民投票法』、でググって みてください。拡散も含め、お願い致します。 質問なのですが、C#.NETとASP.NETは全く別物なのでしょうか? 2017年の書き込み数 : 10 2018年の書き込み数 : 2 2019年の書き込み数 : 3 このスレの書き込み数が↑のようになってるんだけど どうしてここまで過疎たんだ? 実はASPネタはどこか別の板とかで盛り上がっているとかなんだろうか? 技術談義はヒやらStackOverflowやらに流れたから >>739 ASP.NETがそんなに使われていないから。 ASP.NETでやっているとそのうちASP.NETでやる必要性を感じなくなる。 どこに書けばいいのかわからんのだけど.net coreで質問です 単一のバイナリにできるん? 例えばhogehoge.jsとかfugafuga.cssも一つのバイナリに含めてレスポンス返すとか >>743 複数の css をひとつにしたりとかは bundle 使えば出きるよ ググってみて 今度業務でアサインされるので ASP.NET webフォームとJSの連携が参考になるサイトや書籍があれば教えていただきたいのですが。ご存知でしたらよろしくお願い致します。 以下のようなフォームを作りたいです。 どうやってつくったらよいでしょうか? ▼コンビニ ←選択すると▼マークになり、折り畳みのチェックボックスリストが出る ■セブンイレブン ←選択するとレ点でなく、□を塗りつぶす □ローソン ■ファミリーマート △ショッピングモール ←選択しないときは△マークでリストは折りたたまれている △スーパー よろしくお願いいたします。 746です。visual studio2013 のWEBフォーム(.aspx)を使用しています。 まずHTML(とCSS)で必要なページ作ってみる 次にJavaScriptでそれを動かしてみる ここまでASP.NET不要だな そのうえで、サーバサイドで書き換えるべき内容を洗い出す ここまで出来たらもう1回聞きに来い >>748 まずはHTMLで作成してみてからということですね。 分かりました、やってみます。ありがとうございます。 http://localhost/index.aspx 内で、 <%response.write(request.servervariables("REMOTE_ADDR"))%> とすると、127.0.0.1と出てきます。 本当はグローバルIPを出したいのですが、どうしたらいいでしょうか? >>1 東京三鷹の土井(剛)莉里子 https://i.imgur.com/xgeBwrQ.png 氏名■土井剛(莉里子) 生年月日■1994.3.7 前住所■〒181-0013 東京都三鷹市下連雀5丁目3 シティハイツ吉祥寺通り4階 性別■男(詐欺師のため、戸籍変更している可能性あり) Twitter■@copy__writing @kotobamemo_bot 疾患■性同一性障害(LGBT)、発達障害(ADHD)、アスペルガー症候群、統合失調症 ●一方的に好意を寄せる男性から相手にされないと嫌がらせを繰り返す ●某大学病院の精神科隔離病棟にて強制入院 ●骨が見えるほどのリストカット ●奇声をあげながら自室部屋のドアをナイフで突き刺す ●シティハイツ吉祥寺通り4階から飛び降り自殺 ●性転換手術(金玉を取る) ●トラブル...嫌がらせ、ハッキング、乗っ取り、たかり、脅迫、殺害予告...etc ●去年から今年にかけてyoutuber同士のトラブルの仲介に入り某大手youtuberから複数回に渡り1億近い慰謝料をふんだくる ●自宅の吉祥寺にいられなくなり、大阪に潜伏中(警察からも逃げている) >>750 そりゃアクセスしてんのもローカル内だからだろ ルーターFWに穴開けてモバイル回線ででもアクセスしろ >>750 そこで出したいグローバルIPを書いてみ そのアドレスをだれが持ってるんだ? そもそもlocalhostにアクセスしてREMOTE_ADDRでそれ以外のアドレス返してってのが間違ってるが コンパイル エラー メッセージ: BC30002: 型 'ADODB.Connection' が定義されていません。 Dim objCn As ADODB.Connection 昔レガシーaspでやったときは難しいおまじないいらなかったはずなんだけど、何を書けばいいの? もうちょっと詳しく書かんとわからんわ たぶんADODBへの参照設定 つか今どきADODB?それVB.NETの話? >>757 なんか今は他のつなぎ方が主流みたいってことでネットでソースコピペしていろいろやったんだけど、どれもできなかったんだよね 昔ADODB使ってたから古くてもとりあえずこれでやるのが一番楽かなと思ったけど、結局できてない ADODBにこだわる理由はないんで、もしいいやり方があったら教えてほしい やりたいことはlocalhostの.aspxのページからMySQL、もしくは古い.xlsや.mdbにつないでデータを出し入れしたい .aspx内のスクリプトはできればVB系がいい(昔のしか知らないけどC系より慣れてるから) IISは入れた .xlsxとかが使えるOfficeは持ってない Visual Studioは入れてないんだけど、入れたほうがいいのかね? usingが足りてないとか? VBってusingでよかったっけ? VS入れてないってことはWEBサイトか ADODBのDLLが見つからないとかじゃね つかそもそもADO使えてるのか、そのサーバ ASP.NET というのは、C#.VB.NET言語でWEB開発するものだということですか? 言語をC#にしなければ、選択肢は広がりますか? 日本の「コロナ難民」 個人的に驚いたのは、外国で見るような、いかにもホームレスという感じでなく、 服装などパッと見たらそのへんにいる普通の人が多いこと。 ://twitter.com/1ovelynews/status/1256912890990170113?s=20 https://twitter.com/5chan_nel (5ch newer account) 結局、旧いだなんだといっても、フルスタックでwebアプリを作るのに、asp.net webフォームは、まだまだ使える技術と考えて良い? asp.net mvcでサイト作成する時はentity framework使ってdbアクセスするのが一般的ですか?それとも自分でsql文書くのも全然ありますか?テーブル構造が良くないのか、複雑なsql文になりそうで、entity frameworkだと不向きな感じがしたので質問しました。 >>764 抽象的すぎて答えられんわ サポート切れて最新のOSで動かなくてもいいなら永久に使えるけど? >>765 ありかなしかの基準は? 動くかどうかならもちろん動くからありだが >>767 どちらでも作れることは理解しています。 ただ、いろんなサイト見てると、entity frameworkでのDBアクセスが多かったので、それが一般的なのかなと思いました。しかし単純なデータ取得ばかりで、複雑なクエリであってもentity frameworkで実装しているのかが気になりました。 mvcで、例えばマスタ管理画面に渡すモデルはテーブルの項目すべてを保持してるデータを渡してる?。それとも画面表示に必要な項目だけにしたviewmodel作ってそれを渡してる?最近始めたから気になることが多すぎる。 ケースバイケースだろうが、結局ビュー単位のモデル作らんと小回りが利かんからなぁ 細かい制御をモデルに頼らんならテーブル単位のモデルでいいけど asp.net mvcでモデルを渡して、画面表示するのはできるようになリました。 次の段階として、ボタンクリック→検索子画面表示→選択した内容を親画面に戻す というのをやってみたいのです。ヒントでもいいのでやり方を教えてもらえないでしょうか。 >>772 例えば、親画面で検索ボタンクリック→子画面がmodalで開く。modal表示時にajaxで表示用データ取得、動的にデータ表示。ダブルクリック等でデータ選択したら、親画面にデータを返す。これらをjavascriptで行う感じでしょうか? 毎回POSTして全部描画しなおすならJavaScriptつかわんでもできるかもしれんが そんなUI使いたくないだろ JavaScriptまったくわからんならMVCでは無理だよ >>766 MSの移行ガイドなどをもとに、blazorに移行させたりなどの工夫をしたら新しい技術に変換できるので、web formsはフレームワークとしてまだまだ使えたりしない? >>775 新しい技術に変換しなければならない時点でオワコン 新しく学ぶ価値はない サイトや書籍を読んでいるとviewにモデルを渡して表示させるサンプル(表示のみで入力はない画面を想定)が多いです。controllerに画面表示用のjsonを返すwebapiを作成して、view側ではajaxでwebapiを呼んで画面表示という例が少ないのは何か理由がありますか? webapi経由のほうがスマホアプリを作る必要が出たときなど応用が聞いてメリットがある気がしています。 >>777 根本的に勘違いしている Controllerが返すものはActionResult派生でView呼び出したい場合はViewResultを返す JsonResultはJSONを返すだけでViewの呼び出しは行われない >>778 言葉が足りなかったです。 view側ではajaxでwebapiを呼び、結果としてjsonを返してもらい、そのデータを表示。例えばテーブルを表示する際に、jsライブラリであるdatatablesを使うとページャーなどが簡単に実装できると思ったので質問しました >>777 それはお前がMVCのサイトや書籍をみてるから Blazorって便利そうだけどさ ログイン管理等大まかなベースとしてBlazor Serversideを使い、内部の簡単なウィジェットみたいなものにBlazor WebAssemblyを使うみたいなことはできないの? COMポート(RS-232C)を使用しているデスクトップアプリをWebアプリにリプレースしたいのですが、 クライアントPCのCOMポートとサーバ側で通信する為の具体的な方法がわかりません。 この辺りの情報を開設しているようなWebページ、書籍、ライブラリなどはありませんでしょうか。 すみません、質問です マスタテーブルにあるコードと名称をプルダウンに入れて選択できるようにしたいです HTML(asp)側で設置する受け皿は何を書けば良いでしょうか? >>783 そもそもブラウザからCOMポートなんて制御できるのかどうか知らんが まあたぶん出来んと思うけどな どう考えてもそこはASP.NETの範疇じゃないから、どっかよそで聞け >>784 aspxじゃなくてaspなのか? aspxならasp:DropDownListでいいんじゃね 最終的にはHTMLのselect要素をレンダリングすればなんだっていい aspなら自分で頑張れ MVCなら何か適当なヘルパーメソッドあるだろ Blazorってここでいいの? URLパラメータの受け取りで、Webアプリケーション形式 ttp:/app.com/site/data1 という形なら @page "/site/{data1}" で出来たんだけど、 CGI形式 ttp:/app.com/site/?dt=data1 だとどう受け取ればいいのかがわからない。 そもそも、foo.razor で CGI形式のパラメータって受け取れるの? 10GBなどの容量の大きいファイルをアップロードできるようなwebアプリつくりたいんですけど可能でしょうか? webconfigでmaxallow〜とかを設定しましたが2gbまでしかアップロードできませんでした アップロードはどうやってやったんだよ ソースと設定した内容書け asp.net coreでHTTP以外のプロトコルというかデータの受信は可能ですか? (具体的には単にTCPバイナリデータの受信) デフォルトだとBadRequestが返りますが、 なんとかルーティング設定あたりに割り込めないかと。。 asp.net使う理由が見当たらんが asp.netじゃなくて素の.Net Coreでやればいいんじゃね TCP通信でやり取りするセンサがありまして、 センサから受信したデータの表示は、普通にブラウザからというのをやりたいのです。。 ブラウザからのアクセスは443番、センサデータの受信は80番って感じで。 デプロイが面倒なのでアプリは一本化にしたかったんですが、 分けて作るしかないですかね。 そもそもそのバイナリデータ受信は待ち受け側なのか? そのセンサとクライアント画面は同一PCなのかとか ポート80でやり取りする癖にhttpじゃないのかとか まあ、いろいろ設計がおかしいとしか思えんな センサ: サーバに向かってTCPでデータを垂れ流すだけ サーバ: センサからのデータ待ち受けてデータが来たらDBへ書き込み、及びPCのブラウザから要求待ち受け クライアント: デスクトップPC。Webブラウザでサーバにアクセスし、センサのデータを確認。 です。センサのデータ送信先IPとポートは変更可能だがHTTPプロトコルでは不可。 なんか無理そうなので、普通にTCP接続を待ち受ける処理を自前で書いて、 asp.netのstartupで呼び出してます。 久しぶりにWEBサーバの開発することになったのでけど浦島太郎になってしまった webサーバといっても 構内にあるデータベースサーバからIIS経由でデータを取り出してブラウザに送りつければいいのだけど 今ってVisualStudioのAsp.netのテンプレートもフレームワーク毎に何種類もあるし SQL ServerもReporting Serviceだけじゃ無くてPower Bi まで付属してくるから、それ使って見栄えのいいグラフ作れとか言われてるし・・・・ みんなどうやって開発環境選択してるの? AWSで動作するバックエンドプログラムをasp.net core3.1で作成することになりました。 AWSのAPI叩くときに、ローカルで開発中はCredentialProfileStoreChainのTryGetAWSCredentialsで クレデンシャル情報を取得しています。 これをEC2上で動作せる場合、特に何もしなくてもEC2に割り当てられたロールを使って各AWSのサービスを利用できると思ってたのですがTryGetAWSCredentialsでプロファイル名が無いとかで動きません。 ローカルとクラウド上でロジック分けないといけないのでしょか? 例えばS3バケットのAPIを使う場合は if(isLocal) { CredentialProfileStoreChain chain = new(); if( chain.TryGetAWSCredentials( "HogeProfileName", out AWSCredentials cred ) ) s3client = new AmazonS3Client( cred, "ap-northeast-1" ); } else { s3client = new AmazonS3Client( "ap-northeast-1" ); } のように条件分岐させないといけないでしょうか? もの凄く初歩的な質問なのですが サーバー上にzipファイルを置き 直接urlを指定してもダウンロードされないようにして webアプリからのみダウンロード出来るようにする。 みたいな事は可能ですか? もし可能であれば、簡単にどのような仕組みになりますでしょうか? よろしくお願いします。m(_ _)m >>799 webアプリがzipファイル(バイナリファイル)を返す それ以上もそれ以下もないけど セッション変数を更新する処理を排他制御したいのですが、どうすれば良いでしょうか。 Windowsアプリの場合、Objectを作成し、それをlock関数で押さえておけばよかったのですが、ASP.NET Coreの場合、どのように実装するのでしょうか。 >>802 レスありがとう。 シングルトンを調べて実装してみたけどロックできてないようです。 ttps://pastebin.pl/view/808d3fa4 なにか気づくことがあればご教授ください。 すみません。ロックは正常にかかっていたようです。 ロックの後の処理を非同期処理で行う際に、非同期処理終了前にロックを解除している為、ロックがかかっていないような挙動をしていました。 あのね…僕の全て…を…貰って…君になら…僕の全て…あげる…よ?//////// read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる