基於Asp.Net Core Mvc和EntityFramework Core 的實戰入門教程系列-1


來個目錄吧:
第一章-入門
第二章- Entity Framework Core Nuget包管理
第三章-創建、修改、刪除、查詢
第四章-排序、過濾、分頁、分組
第五章-遷移,EF Core 的codefirst使用
暫時就這么多。后面陸續更新吧

本系列文章為翻譯加上我個人的使用心得理解,希望幫助熱愛學習的程序員。

珍重聲明:本系列文章會跟原文有點出入,去掉了羅里吧嗦的文字。

原文:Getting started with ASP.NET Core MVC and Entity Framework Core using Visual Studio

2017-3-7 22:01:58這個時間是我開始翻譯本系列的時間也是vs2017發布會的時間。祝願.Net Core越來越好

前言

Contoso 大學示例項目是一個 基於Visual Studio 2015開發,使用技術是.net core 1.0mvc與EntityFramework Core1.0。
功能說明:
本程序是一個虛構的Contoso大學網站,他包含了招生、課程管理、老師管理等功能。這是一個系列教程,講述如果從零開始構建一個Contoso大學程序。

EF Core1.0 是EF的最新版本,但是他沒有具備所有的EF6.X的功能。(譯者注: 所以你們用的時候自己遇到的坑要自己填)

系統必備組件:

  • Visual Studio 2017 (譯者注:我們肯定用2017了啊是不是)
  • .Net Core 1.1

Contoso 大學 Web程序

以下為正文,原作者羅里吧嗦的話語我就不說了。基本就是用戶可以查看和修改學生、課程、老師的信息。
以下是截圖:

Paste_Image.png

Paste_Image.png

為了本教程可以集中主要精力介紹如何使用EntityFramework,網站的用戶界面樣式都是基於VS2015內置的模板生成的頁面內容。

創建一個ASP.NET Core MVC的項目

我都用VS2017 RTM開發了。

打開Visual Studio 2017並創建一個新的ASP.NET Core MVC項目,取個名字:“ContosoUniversity”。

  • 文件菜單中,選擇新建項目
  • 從左邊窗口中選擇Web
  • 選擇ASP.NET Core Web Application (.NET Core)項目
  • 輸入“ContosoUniversity”作為名稱並且點擊確定

老外耐心就是好,寫的這么詳細一點都不嫌累

Paste_Image.png

然后點擊更改身份驗證為不進行身份驗證,取消在雲中托管,然后點擊確定

這里可以選擇.NETCORE 1.1

Paste_Image.png

如果你不小心點了啟用身份認證的話,那么就把 項目刪除了吧。Microsoft Identity的模塊我空了,抽空在單獨翻譯翻譯吧,現在我們繼續。

修改下網站的布局和風格

簡單調整下菜單布局、首頁視圖信息

打開 路徑為“Views/Shared/_Layout.cshtml ”

  • 修改下標題名稱“ContosoUniversity” 為“Contoso University”
  • 添加菜單導航視圖信息,Students,Courses,Instructors和Departments然后刪除Contant菜單


<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>@ViewData["Title"] - Contoso University</title> 

    <environment names="Development">
        <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" />
        <link rel="stylesheet" href="~/css/site.css" />
    </environment>
    <environment names="Staging,Production">
        <link rel="stylesheet" href="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.6/css/bootstrap.min.css"
              asp-fallback-href="~/lib/bootstrap/dist/css/bootstrap.min.css"
              asp-fallback-test-class="sr-only" asp-fallback-test-property="position" asp-fallback-test-value="absolute" />
        <link rel="stylesheet" href="~/css/site.min.css" asp-append-version="true" />
    </environment>
</head>
<body>
    <div class="navbar navbar-inverse navbar-fixed-top">
        <div class="container">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
                <a asp-area="" asp-controller="Home" asp-action="Index" class="navbar-brand">Contoso University</a>
            </div>
            <div class="navbar-collapse collapse">
                <ul class="nav navbar-nav">
                    <li><a asp-area="" asp-controller="Home" asp-action="Index">Home</a></li>
                    <li><a asp-area="" asp-controller="Home" asp-action="About">About</a></li>
                    <li><a asp-area="" asp-controller="Students" asp-action="Index">Students</a></li>
                    <li><a asp-area="" asp-controller="Courses" asp-action="Index">Courses</a></li>
                    <li><a asp-area="" asp-controller="Instructors" asp-action="Index">Instructors</a></li>
                    <li><a asp-area="" asp-controller="Departments" asp-action="Index">Departments</a></li>
                </ul>
                @await Html.PartialAsync("_LoginPartial")
            </div>
        </div>
    </div>
    <div class="container body-content">
        @RenderBody()
        <hr />
        <footer>
            <p>© 2016 - Contoso University</p>
        </footer>
    </div>

    <environment names="Development">
        <script src="~/lib/jquery/dist/jquery.js"></script>
        <script src="~/lib/bootstrap/dist/js/bootstrap.js"></script>
        <script src="~/js/site.js" asp-append-version="true"></script>
    </environment>
    <environment names="Staging,Production">
        <script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-2.2.0.min.js"
                asp-fallback-src="~/lib/jquery/dist/jquery.min.js"
                asp-fallback-test="window.jQuery">
        </script>
        <script src="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.6/bootstrap.min.js"
                asp-fallback-src="~/lib/bootstrap/dist/js/bootstrap.min.js"
                asp-fallback-test="window.jQuery && window.jQuery.fn && window.jQuery.fn.modal">
        </script>
        <script src="~/js/site.min.js" asp-append-version="true"></script>
    </environment>

    @RenderSection("scripts", required: false)
</body>
</html>

在 路徑“Views/Home/Index.cshtml”,Home視圖中替換為以下代碼信息

@{
    ViewData["Title"] = "Home Page";
}

<div class="jumbotron">
    <h1>Contoso University</h1>
</div>
<div class="row">
    <div class="col-md-4">
        <h2>Welcome to Contoso University</h2>
        <p>
            Contoso University is a sample application that
            demonstrates how to use Entity Framework Core 1.0 in an
            ASP.NET Core MVC 1.0 web application.
        </p>
    </div>
    <div class="col-md-4">
        <h2>Build it from scratch</h2>
        <p>You can build the application by following the steps in a series of tutorials.</p>
        <p><a class="btn btn-default" href="https://docs.asp.net/en/latest/data/ef-mvc/intro.html">See the tutorial »</a></p>
    </div>
    <div class="col-md-4">
        <h2>Download it</h2>
        <p>You can download the completed project from GitHub.</p>
        <p><a class="btn btn-default" href="https://github.com/aspnet/Docs/tree/master/aspnet/data/ef-mvc/intro/samples/cu-final">See project source code »</a></p>
    </div>
</div>

然后按鍵CTRL+F5,運行項目進入調試模式。你可以看到主頁頁面的變化

Paste_Image.png


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM