【質問】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 >>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を勉強するしかない read.cgi ver 07.5.4 2024/05/19 Walang Kapalit ★ | Donguri System Team 5ちゃんねる