這張表[dbo].[fruitkind]是這次的演示的主角,其中有乙個字段[fruitcategory_nbr]是乙個外來鍵,也就是前段時間學習中資料表的主鍵。在資料為建立好錶之後,我們還需要建立一系列的儲存過程,由於此表有外來鍵,也說明了這是多表關聯。因此先寫好乙個表函式,即是表關聯:
下面的儲存過程,是獲取資料表所有記錄:
以主鍵來獲取單筆記錄資料:
新增資料至資料庫的儲存過程:
更新資料庫的儲存過程:
最後乙個儲存過程,即是刪除的儲存過程:
insus.net一開始想學mvc時,就想到一定要緊密與資料操作聯絡在一起。因此這些練習中,當然少不了資料相關的內容,由於資料庫也是安裝了新版本sql server 2014,也希望在練習過程中,能體驗到新版本之中細微變化。
ok,下面我們開啟visual studio 2013,找到上次的mvc應用程式。在models目錄之下,建立乙個model,名稱為fruitkind.cs,就以資料表名來定義,這樣好在程式維護時方便。這個model,有三個public的屬性,也是表的三個欄位名。
好的,接下來我們需要建立乙個entity(fruitkindentity.cs),它也是被建立於models目錄下。我們目的是希望這個實體能與資料庫進行互動,也就是說能從這個實體中讀取資料,儲存資料以及刪除資料等。
上面的controllers中,先是例項化models下的fruitkindentity。
在#14至#18行的index的action中,是直接獲取list物件傳給view()。
#20至#23的details 的action,下面為了好對比,insus.net把以前寫的也帖於此:
在#42至#55行的httppost的edit action中的實現方法,比起以前寫的,已大大簡化了。
另外,就連delete action也做了相關的簡化,對比一下:
算是有進步了,只要認真練習,勤對比。下面insus.net還要分享一下五個檢視的**。
首先是index.cnhtml檢視,留意下圖中箭頭的**以及其語法,模型,迴圈以及引數的區別。
details.cshtml檢視:
create.cshtml檢視:
edit.cshtml檢視:
delete.cshtml檢視:
在所有的檢視中,除了index.cshtml檢視是引用model為@model ienumerable,其它的均為@model insus.net.models.fruitkind。
在顯示值時,使用了 @html.displayfor(o => item.***),而在建立或編輯時使用了@html.hiddenfor(o => model.***)
還有就是在create.cshtml,edit.cshtml和delete.cshtml的檢視中,還有使用razor語法@using (html.beginform())來產生form和method="post"。
在index.cshtml有使用了@foreach (var item in model)來迴圈產生記錄。
這些都是最基礎的,使用多與習慣而已。
最後需要展示的是實時操作演示:
MVC 5使用ViewBag 物件 顯示資料
mvc 5使用viewdata 模型 顯示資料 此篇是學習另外乙個方式,是使用viewbag object 來實現控制器與檢視之間的互動。在mvc 5建立model,controller和view與前面兩篇的步驟是一樣的。現在insus.net只是把差異的地方列出來即來,只作仔細對比,就會發現其中的...
MVC5擴充套件方法
html.partial和html.renderpartial用法 html.partial和renderpartial的用法與區別 輸出方式 html.partial和renderpartial都是輸出html片段,區別在於 partial是將檢視內容直接生成乙個字串並返回 相當於有個轉義的過程 ...
關於mvc5的學習
最近幾個周一直在自學mvc框架,我自己可以說是一點基礎都沒有,看一些關於mvc的教程,裡面的很多定義類的關鍵字完全看不懂,只能靠著反覆的看來熟悉一下這個開發模式。首先談一下我個人的這幾周的學習心得。微軟官網的教程非常簡單,跟著步驟做下去,算是剛剛熟悉這個開發模式是怎麼回事。裡面有乙個先設計的mode...