使用C# ASP.NET Web API開發供Unity WebGL使用的HTTP接口(一)

Unity WebGL連接數據庫,除了之前提到的一種使用PHP的方法外,還用一種就是本文提到的,使用ASP.NET Web API寫一個HTTP接口,然後在UnityWebGL中調用。

需要工具:

Visual Studio 2017(需要有ASP.NET Web API的開發環境)
SQL Server數據庫
Unity2017.4.10(需要能夠發佈WebGL)

數據庫操作

首先需要在SQL Server中新建一個數據庫。打開數據庫,右鍵新建數據庫,命名爲MyWebAPI。
在這裏插入圖片描述 在這裏插入圖片描述

打開VS2017創建APS.NET Web API項目

1、創建項目

新建項目,選擇ASP.NET Web應用程序,命名爲MyWebAPI在這裏插入圖片描述在這裏插入圖片描述
在這個界面,選擇空的模板,添加文件夾和核心應用選擇Web API 。不進行身份驗證即可。
在這裏插入圖片描述
創建好的界面如下。
在這裏插入圖片描述

2、安裝Entity Framework框架

現在項目已經創建好了,接下來就準備連接數據庫。這裏使用的是SQL Server數據庫,在VS中有已經寫好的框架,直接安裝框架使用即可。這樣就免去了寫SQL語句的麻煩。Entity Framework。首先打開“工具”—>NuGet包管理器—>程序包管理控制檯。
在這裏插入圖片描述
在控制檯輸入如下命令進行安裝

Install-Package EntityFramework

如出現如下界面,即爲安裝成功。
在這裏插入圖片描述

3、連接數據庫

安裝完成之後我們就需要連接數據庫了,打開Web.config文件,在裏面加入連接數據庫代碼,如下,其中*****部分替換爲你數據庫的名稱

<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=Localhost;Initial Catalog=******;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
</connectionStrings>

最終效果如下:
在這裏插入圖片描述

4、建立數據模型

在Models目錄下新建一個類,命名爲Student(右鍵,添加,類)

    /// <summary>
    /// 學生信息,數據庫中的表格的內容和這個是對應的
    /// </summary>
    public class Student
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public string StudentNumber { get; set; }
        public string Class { get; set; }
        public string Address { get; set; }                      
    }

之後再建立一個數據庫的Context類文件。

public class StudentContext : DbContext
    {
        public StudentContext()
       : base("name=DefaultConnection")
        {
        }
        public DbSet<Student> Students { get; set; }
        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
        }
    }

注意:
1、name=DefaultConnection要和Web.config中的數據庫連接字符串中的name一致。
2、OnModelCreating重載函數的作用是讓創建的數據表名稱爲單數格式,即爲Student,而不是Students。

5、啓用Migrations

在程序包管理控制檯啓用Migrations,生成Migrations目錄,以及目錄中的Configuration.cs配置文件。在控制檯輸入如下代碼:

Enable-Migrations

在這裏可能很多人會報錯,不用慌,解決辦法在這裏,這是本人踩的第一個坑。解決辦法

6、將建立的數據模型導入到SQL Server中

在程序包管理控制檯輸入:

Add-Migration xxx

其中xxx可任意填寫,VS會生成一個名爲201912050905531_123_xxx.cs文件,201912050905531_123是當前時間,文件包含Up和Down兩個方法。
在這裏插入圖片描述
圖片中黃色部分不需要管,因爲我之前已經創建過。對程序沒有影響。
接下來輸入:

Update-Database

對數據庫進行更新。執行完畢之後,進入數據庫刷新一下,就會發現Student數據表已經創建完畢了。

7、向數據庫添加模擬數據

利用Configuration.cs中的Seed函數添加一些測試數據,在Seed方法下添加以下模擬數據。

var student = new Student
            {
                Name = "小王",
                StudentNumber = "20190201",
                Class = "三年二班",
                Address = "中山區",               
            };
            context.Students.Add(student);
            student = new Student
            {
                Name = "小李",
                StudentNumber = "20190506",
                Class = "三年五班",
                Address = "高新園區",               
            };
            context.Students.Add(student);
            student = new Student
            {
                Name = "小王",
                StudentNumber = "20190315",
                Class = "三年三班",
                Address = "西崗區",              
            };
            context.Students.Add(student);

添加完畢之後保存,在控制檯輸入:Update-Database進行更新,帶執行完畢之後刷新數據庫,就會發現我們添加的數據已經顯示在了數據庫之中。
在這裏插入圖片描述
下一篇將寫到創建控制器以及在瀏覽器中讀取。

參考資料:https://www.cnblogs.com/yelanggu/p/10002129.html特別感謝一下大神。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章