忍者ブログ
[41]  [42]  [43]  [44]  [45]  [46]  [47]  [48]  [49]  [50]  [51
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

MVC5入門 その6 Viewの仕組み ViewBag.変数名 ViewData[変数名]
ViewはRazorテンプレートにゆだねる
構文 ViewBag.変数名=値

・ビュー変数
 HomeController での定義
        public ActionResult Index()
        {
            ViewBag.Hd = "見出し";
            return View(); ← ここで表示
        }

 Index.cshtmlの記載
 @{
    ViewBag.Title = "見出";
}
<h2>@ViewBag.Hd</h2>  ← ここの@にセット
<p>
    @Html.ActionLink("編集", "Edit", new { /* id = Model.PrimaryKey */ }) |
    @Html.ActionLink("表示", "Details", new { /* id = Model.PrimaryKey */ }) |
</p>


・他の方法
ViewBag.Hd = "見出し";の代わりに
ViewData["Hd"] = "見出し";でも可

・コードナゲット 複数の式やステートメントの記載に使用
@{
    ViewBag.Title = "見出";
}

・Viewの生成は
テンプレートで色々なパターンを自動生成
ビュー名:アクション名と同じ
テンプレート:表示したいモデル
モデルクラス:レイアウトでモデルを作った時に使用
レイアウトページにチェック

拍手

PR
MVC5入門 その5 起動するまでのMapRouteのお仕事

起動するまでのMapRouteのお仕事

http://localhost/Home/Indexと入力した時の
実際の動きは

リクエスト >> マッチングするルート(RouteConfig.cs)を検索

App_Start/RouteConfig.csが検索される

    public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );
        }
    }

MapRouteメソッド
 name:ルート名 url:URlのパターン  defaults:デフォルト値

name デフォルトはDefault ご自由に
url   "{controller}/{action}/{id}", コントローラ/アクション名 ユーザパラメータ
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }

このアドレスが表示される

App_Start内の各CS
JavaScript/css,グローバルフィルター、ルート情報、認証情報を記載

このCSの起動は

Global.asax内の

    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
        }
    }
(


MVC3以前は場所が事なる


拍手

MVC5入門 その4 まずは作って見よう

リンクですが 

各Viewの
@Html.ActionLink("Edit", "Edit", new { /* id = Model.PrimaryKey */ }) |
@Html.ActionLink("Back to List", "Index")


@Html.ActionLink("編集", "Edit", new { /* id = Model.PrimaryKey */ }) |
@Html.ActionLink("戻る", "Index")
に変更して下さい

選択の都度画面が切り替わります。

次にPostの処理ですが

saveの処理ですが  [AcceptVerbs(HttpVerbs.Post)]をHomeControllerに追加して下さい

        }
        public ActionResult Edit()
        {
            Kojin koj = new Kojin
            {
                Fname = "田中",
                Lname = "次郎",
                Tosi = 30,
                Adress = "東京都新宿区歌舞町"
            };
            return View(koj);
        }
        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult Edit(Kojin koj)
        {
            return View(koj);
        }

この間に更新処理を記載すればOKです

_Layout.cshtml
内の下記を削除すれば
表示がスッキリとします

            <div class="navbar-collapse collapse">
                <ul class="nav navbar-nav">
                    <li>@Html.ActionLink("ホーム", "Index", "Home")</li>
                    <li>@Html.ActionLink("詳細", "About", "Home")</li>
                    <li>@Html.ActionLink("連絡先", "Contact", "Home")</li>
                </ul>
                @Html.Partial("_LoginPartial")
            </div>

拍手

MVC5入門 その3 まずは作って見よう
編集用の画面をつくります
Controllerに編集用を追加
        public ActionResult Edit()
        {
            Kojin koj = new Kojin
            {
                Fname = "田中",
                Lname = "次郎",
                Tosi = 30,
                Adress = "東京都新宿区歌舞町"
            };
            return View(koj);
        }
ついでView

テンプレートにEditを選択して下さい

ソースが自動生成されます。
http://localhost:ssssss/Home/Editを表示すると

拍手

MVC5入門 その2 まずは作って見よう

表示機能の追加

モデル >> 追加 >> コード >> クラスから
Kojin.csクラスの追加

  public class Kojin
    {
        public string Fname { get; set; }
        public string Lname { get; set; }
        public int Tosi { get; set; }
        public string Adress { get; set; }
    }
を記載
 
ここで一端ビルドする クラスを反映させる為

HomeControllerにDetailsアクションを追加
        public ActionResult Index()
        {
            return View();
        }
        public ActionResult Details()
        {
            Kojin koj = new Kojin
            {
              
                Fname = "山田",
                Lname = "太郎",
                Tosi = 20,
                Adress = "東京都港区田町"
            };
            return View(koj);
        }

ビューの作成

ビューの追加 Homeフィルダで
ビュー名 Details
テンプレート Details
モデルクラス Kojin

http://localhostXXXX/Home/Detailsで



<dt>
            @Html.DisplayNameFor(model => model.Fname)
 </dt>を
<dt>
            苗字
 </dt>
すれば名称名を変更できる

拍手

カレンダー
04 2025/05 06
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
フリーエリア
最新CM
[03/10 DORA]
最新TB
プロフィール
HN:
dorabu
性別:
非公開
バーコード
ブログ内検索
P R
Copyright © ドラブーのアンドロイドとIoTなブログ All rights reserved. / Template by 四季. / Material by てんせん.

忍者ブログ [PR]