質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
ASP.NET

ASP.NETは動的なWebサイトやWebアプリケーション、そしてWebサービスを構築出来るようにする為、Microsoftによって開発されたウェブアプリケーション開発フレームワークです。

Q&A

解決済

1回答

1711閲覧

【ASP.NET】予約状況を一覧表示するのに向いているコントロールは何でしょうか?

matsutake

総合スコア34

ASP.NET

ASP.NETは動的なWebサイトやWebアプリケーション、そしてWebサービスを構築出来るようにする為、Microsoftによって開発されたウェブアプリケーション開発フレームワークです。

0グッド

0クリップ

投稿2018/03/24 08:27

いつもお世話になっております。
現在ASP.NETを勉強しつつ、予約システムのような
使えるシステムの作成を目指して勉強中です。

前回はこちらで質問させて頂き、環境(Visual Studio 2017 Community)を整えさせてもらったのですが、
経験不足のため、調べても理解できないことも多く、
効率も悪く、なかなか思うようには進めておりません。
それでも自分にあった本を探し、サンプルを作ってやっているのですが
自分の目標としているシステムを作成するための情報がなかなかなく困っております。

例えば、以下のような表を表示し、「○」の部分を選択したら、
そこの日時の情報を取得し、次のページに遷移するというような
流れを想定した場合、使用するコントロールは何が理想なのでしょうか。
ご教授いただきたく、宜しくお願いいたします。

| 日時 |12(月)|13(火)|14(水)|15(木)|16(金)|17(土)|18(日)|
|:--|:--:|--:|
|9:00| ○ | ○ | × | ○ | ○ | × | × |
|9:30| × | ○ | × | × | ○ | × | ○ |
|10:00| ○ | ○ | × | × | ○ | ○ | ○ |
|10:30| × | ○ | × | ○ | × | ○ | × |
|10:00| × | ○ | × | ○ | ○ | ○ | × |

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/03/24 10:01 編集

すみません、間違えて投稿してしまいました。無視してください
退会済みユーザー

退会済みユーザー

2018/03/24 10:26

それだけの情報ではどうするのが良いのか適切なアドバイスができません。基になるデータソースは何か(SQL Server DB? その他?)、「そこの日時の情報」とは具体的に何か、遷移して何を表示したいのか等もっと具体的な情報が必要です。
guest

回答1

0

ベストアンサー

ここにも。
×:ご教授
○:ご教示

まず、一口にASP.NETと言ってもWebFormsMVCRazorPages等の異なる技術があるため、質問にはその辺りの情報が必要です。
※「コントロール」と言っておられるので多分ASP.NET WebFormsだと思いますが

質問の回答としては、WebFormsでやるならGridViewコントロールでしょうね。
中に仕込むコンテンツは単純に日付・時間をQueryStringにくっつけたリンクでもいいですし、PostBackさせる前提でRow/Colの位置を取れるようにしておいてサーバサイドで判定しても良いと思います。

ちなみに私なら以下の理由でWebFormsは捨ててRazorPagesで組みますね。

  1. WebFormsはデザインに凝りたくなったときにひどい目に合うことが多い
  2. PostBackという独特な技術が使われていてそれを理解する必要がある
  3. 昨今の潮流はデザインとプログラムの分離がナウい

WebFormsは確かに用意された様々なコントロールを組み合わせることでそれなりにWEBページが作れるんですが、今となっては若干古めかしい技術です。
新たに技術習得をするのならPostBack機構よりもMVC概念を学んだほうが他言語にも派生しやすい感じ。

投稿2018/03/24 09:02

ShikaTech

総合スコア468

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

matsutake

2018/03/24 09:24

ShikaTechさん。 早々のご回答、感謝致します。 また、情報不足の点、更に誤字のご指摘、大変申し訳ございません。 仰られるように現在WebFormsを使用しておりますが、 やはりご提案頂いた技術に舵を切るべきなのでしょうか。 そういう意味でもまだまだ調査不足、知識不足が否めず、 反省するばかりです。 一度、WebFormsから離れ、他の技術も早速調べてみます。 ちなみにその場合、先ほどご質問させて頂きました内容につきましては、 他の技術の場合、どのようになるのでしょうか。
退会済みユーザー

退会済みユーザー

2018/03/24 10:11

> WebFormsは捨ててRazorPagesで組みますね。 RazorPages とは何でしょう? MVC のことを言ってますか? Web Pages ではないですよね。 MVC のことを言ってるとして、Web Forms には MVC にはない良いところが多々あるのです。とくに、イベントドリブン型プログラムに慣れている場合 Web Forms が選択の第一候補に挙がるはずです。DB のレコードの表示、編集、更新がメインならやはり Web Forms が第一候補に挙がるはずです。MVC を勧めるなら、いろいろな条件を考え Web Forms のメリットと天秤にかけて考えるべきです。そこは考えておられないようですが・・・
ShikaTech

2018/03/25 05:57

謝る必要なんて全然ありませんよ~ WebFormsで思うようなページが作れるようになるまで学んでみるのも、まずMVCの概念に触れてみるのも、どちらも最終的には有益だと思います。 SurferOnWwwさんも仰られている通り、私が言う古めかしいという話はその反面短くない歴史があるWebFormsにはよく考えて作り上げられた多種多様なコントロールがあり、それらを組み合わせて簡単なページならサクッと作り上げられる環境がありますので。 私が言っているRazorPagesについては以下のページを参考にしてみてください。 ASP.NET MVCを基幹技術としたページ側の記法です。 https://docs.microsoft.com/en-us/aspnet/core/mvc/razor-pages/?tabs=visual-studio もし質問者さんがMVCをすでに知っていて、フロント側の知識(HTML/CSSの基本、jQueryのコーディング経験など)があればASP.NET MVC方面の方がすんなりいけると思いますし、C#.NETのWindowsFormアプリの開発経験があるのならASP.NET WebForms一択だと思います。 どう選ぶかの話で言えば、 いわゆるマスタメンテ画面でCRUD機能のみ提供、のユースケースであればWebFormsで十分です。 (SurferOnWwwさんが例に挙げられたDBレコードの表示、編集、更新、って話ですね) あとは社内システムでデザインにあんまり凝らなくて良いって話ならWebFormsでサクサク組み上げるほうが良いでしょう。 逆にBtoCでお客さんが直に触れるWebページを作りたい!ajax駆使してグリグリ動かしたりSPAでシームレスにデザインしたい、ってならMVCを選択したほうが良い場合もあります。 こんなところでいかがでしょ?
matsutake

2018/03/25 06:58

ShikaTechさん、 SurferOnWwwさん, 全くの初心者である私に対しての お二方のご丁寧なご回答に本当に感謝しております。 私も質問をしてばかりではなく、 皆さんと同じぐらい 中身のある話ができるようなレベルになれるよう 引き続き、努力して行きたいと思います。 今回につきましては、 そもそもの質問以前に 自らでもっと調査してから させて頂くべきだったと反省しております。 皆様のご回答を基に今一度方向性等を考えた上で 改めて出直しさせて頂きます。 この度は貴重なお時間、ありがとうございました。
ShikaTech

2018/03/25 07:11

ふぁいとですー。おいしいキノコに育ってくださいw
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問