## Visual Studio Web (2022版本) ## 建立專案 1. 在檔案中建立"**專案**"項目 ![image](https://hackmd.io/_uploads/BJiEsvgp0.png) 2. 選擇最下方**ASP.NET Web 應用程式(.NET Framework)** ![image](https://hackmd.io/_uploads/rJPsoveTA.png) 3. 選擇要用的架構,並按下一步 這邊建議用**4.7.2** ![image](https://hackmd.io/_uploads/SJLi2vl6R.png) 4. 選擇**空白**,並勾選 **Web Form** ![image](https://hackmd.io/_uploads/r1FQ6PxpA.png) ## 建立項目 1. 點擊滑鼠右鍵,按下**加入**,選擇**新增項目** ![image](https://hackmd.io/_uploads/rybreOl6R.png) 2. 選擇 **Web 表單** ![image](https://hackmd.io/_uploads/SyR6gulTA.png) 3. 建立你想要的文字串 並按下執行(綠色三角形) ![image](https://hackmd.io/_uploads/BkEtsKzpR.png) **這邊要注意的是如果要做修改要按下紅色方框** 4. 成果 ![image](https://hackmd.io/_uploads/SySwotM6R.png) ## 如何新增工具箱 在檢視中點擊**工具箱** ![image](https://hackmd.io/_uploads/Hkd9TtfaR.png) ## 如何還原舊版web form介面 選擇**工具** →→ 點擊**選項** →→ 查詢**web form設計工具** ![image](https://hackmd.io/_uploads/H1d-_mlA0.png) ![image](https://hackmd.io/_uploads/SJvsdmgCA.png) # 創建db 1.建立資料庫 ![image](https://hackmd.io/_uploads/BJQ7J_OMJl.png) 務必使用**Windos驗證** ``` (localdb)\mssqllocaldb ``` ![image](https://hackmd.io/_uploads/H1yp1uOfye.png) 1.輸入你想填的資料(填完後點擊**更新**) ![image](https://hackmd.io/_uploads/HJ1J5xDzkx.png) 2.點擊**顯示資料表資料** (即可輸入資料) ![image](https://hackmd.io/_uploads/S1paxZDf1g.png) ![image](https://hackmd.io/_uploads/Hkgp-bPf1x.png) # web.config * 可以將DataSource → Server ; Initial Catelog → database ![螢幕擷取畫面 2024-11-18 145718](https://hackmd.io/_uploads/Sk-1LDdfyl.png) 3.創建WebForm 在工具箱中的**資料**創建: 並連結剛剛創建的資料庫 ![image](https://hackmd.io/_uploads/SJpyXWPz1x.png) 4.點擊SqlDataSource-SqlDataSiurce1 ![image](https://hackmd.io/_uploads/HJ5DKLufyx.png) *這邊要注意的是連接字串Security後面的字串要刪掉(在Web.config) 5.選擇所要的資料行並進行下一步→點擊完成 ![image](https://hackmd.io/_uploads/BJ4kcUuGke.png) 6.選擇資料來源:SqlDataSource ![image](https://hackmd.io/_uploads/ryJS9IdGyl.png) 7.執行後的結果 ![image](https://hackmd.io/_uploads/Hy7Xt8df1e.png) # 新增刪除/編輯 1.在GridView中點擊**進階** ![image](https://hackmd.io/_uploads/BkNzoIOzyg.png) 2.勾選**產生INSERT、UPDATE...** ![image](https://hackmd.io/_uploads/SyBwjI_fke.png) 3.勾選啟用編輯和刪除 ![image](https://hackmd.io/_uploads/SydPnIuG1g.png) 4.點擊CommandField → 在Button Type選擇Button → 點擊**將這個欄位轉換TemplateField** ![image](https://hackmd.io/_uploads/SyijhUuzye.png) 5.呈現樣子 ![image](https://hackmd.io/_uploads/BkHDpLuG1e.png) 執行結果 ![image](https://hackmd.io/_uploads/B1MipUuMyl.png) # 提醒鍵 擔心誤觸刪除,可以在原始檔做修改 ``` onClientClick="return confirm('Are you sure ?')" ``` ![螢幕擷取畫面 2024-11-18 142808](https://hackmd.io/_uploads/SkaACLOfyl.png) # DropDownList選擇條件 1.點擊設定資料來源 ![image](https://hackmd.io/_uploads/SJaWfDuGyx.png) 2.點擊WHERE設定資料行→加入 ![image](https://hackmd.io/_uploads/BJaPWDOMkg.png) 3.輸出結果 ![image](https://hackmd.io/_uploads/rylA7wdfJg.png) # 新增資料 1.在舊有的WebForm新增Buttom ![螢幕擷取畫面 2024-11-18 152534](https://hackmd.io/_uploads/SJgJYnvuMJe.png) 2.雙擊Buttomc後在aspx.cs檔輸入: ``` Response.Redirect("WebForm4.aspx"); ``` 3.創建一個WebForm,將以下資料輸入進去: ![image](https://hackmd.io/_uploads/r1b-pvdMJe.png) 4.點擊Buttom進入aspx.cs檔,在Button_Click輸入: ``` string strcon = WebConfigurationManager.ConnectionStrings["pathConnectionString"].ConnectionString;//資料連結(請找對正確資料連結) SqlConnection sqlcon = new SqlConnection(strcon); sqlcon.Open();//exec SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlcon; cmd.CommandText = "insert into product_1 (PId,PName,PType,Price) values (@pid,@pname,@ptype,@price)"; //insert into資料表名稱 (欄位) 對應 (@_) cmd.Parameters.AddWithValue("@pid",TextBox1.Text);//把值加入 cmd.Parameters.AddWithValue("@pname", TextBox2.Text); cmd.Parameters.AddWithValue("@ptype", TextBox3.Text); cmd.Parameters.AddWithValue("@price", TextBox4.Text); cmd.ExecuteNonQuery(); //丟到資料庫管理系統 sqlcon.Close(); Response.Redirect("WebForm2.aspx"); ``` 5.輸出結果 ![image](https://hackmd.io/_uploads/S1yhRwuzJe.png) ![image](https://hackmd.io/_uploads/H1rC0DdGkg.png) ![image](https://hackmd.io/_uploads/HkSJk_dG1x.png) # 不用SqlDataSource的方法連結資料 1.在WebForm創建GridView ![image](https://hackmd.io/_uploads/ry5lYlAG1g.png) 2.打開WebForm.aspx.cs → PageLoad事件發生後把資料填進去 在最上方填寫: `using System.Data; //需要類別庫 using System.Data.SqlClient;//跟MicroSoft Server連結 using System.Web.Configuration;//目錄.子目錄` 在Page_Load寫: ` protected void Page_Load(object sender, EventArgs e) {` ` if (!Page.IsPostBack)// 判斷是否為第一次執行 { DataSet ds = new DataSet(); //local端的資料庫 string strcon = WebConfigurationManager.ConnectionStrings["tkuConnectionString"].ConnectionString; // tkuConnectionString的ConnectionString屬性值 //SqlConnection sqlcon = new SqlConnection(strcon); 定時消滅掉 using (SqlConnection sqlcon = new SqlConnection(strcon))//好處:執行結束後馬上被消滅掉` ` { sqlcon.Open(); SqlCommand sqlcmd = new SqlCommand(strcon, sqlcon); sqlcmd.Connection = sqlcon; sqlcmd.CommandText = "select id, name from student"; SqlDataAdapter adapter = new SqlDataAdapter(sqlcmd);//適配器 (溝通橋樑) adapter.Fill(ds,"students");//資料庫傳來的資料填入DataSet(ds) 表格名稱叫students DataTable dt = ds.Tables["students"];//回傳資料 GridView1.DataSource = dt;//告訴資料來源 GridView1.DataBind();//將資料結合在一起 } }` # ASP.NET Core Web應用程式 1.選擇紅色方框 ![image](https://hackmd.io/_uploads/SyZwy3Wmkg.png) 2.點擊紅色方框 → 在紅線處更改成 **Add** ![image](https://hackmd.io/_uploads/r1Z0y3Z71e.png) 3.新增 **Controllers** → 選擇MVC控制器-空白 → 將名字更改為:AddController ![image](https://hackmd.io/_uploads/S199l3WQyl.png) ![image](https://hackmd.io/_uploads/BJgRln-mJg.png) 4.點擊右鍵新增**檢視** → 點擊紅色方框 → 三個方框不要勾選即按確認 ![image](https://hackmd.io/_uploads/SJp1MhZ7ke.png) ![image](https://hackmd.io/_uploads/r18fM3bXye.png) ![image](https://hackmd.io/_uploads/rkCwMhWXkx.png) 5.測試是否能填寫 輸入:` <h1>My First MVC</h1>` ![image](https://hackmd.io/_uploads/rkOhXn-myg.png) 測試結果: ![image](https://hackmd.io/_uploads/rJLwQ3-m1e.png)