作者添加、刪除、修改,基本和前面的目錄管理類似,這裡我們更多的用了些MVC 的Html Helper
1、前面我們把資料的存取全部放到BookShopDBDataContext部分類別裡,但是如果功能很多,那麼比較淩亂,我們這裡按每一個大點的功能放到一個檔案裡
首先,我們Model裡建立一個DALBase的抽象類別,當然你也可以建立一個DAL層。
2. 我們再建立一個AuthorDAL內容如下:
疑問:上面黃色的地方,我覺得很怪異,因為那個model我是從資料庫裡get出來的,但是如果這個是new出來的一個Author,而且authorId是資料庫已有的,我的意思是直接根據new出來Author的對資料庫來修改,不知有何方法,熟悉Linq的朋友可以告訴我下?
3. 瀏覽作者
(1).在Controller下建立一個AuthorController
(2)對應的,我們需要在View下建立一個Author目錄,在Author目錄下再建立一個AllAuthors.aspx
修改AllAuthors.aspx.cs如下:
(3) 修改AllAuthors.aspx如下,
注意,上面兩個黃色反白的地方,我們用的是authorId而不是id,那麼我們如果想Edit時地址顯示為Edit/1或Edit/2等,而且能自動傳給我們Action方法做參數,我們必須修改預設的路由,開啟Global.asax,在最上面添加下面黃色的代碼
(4) 由於沒有資料,我們看到如下的效果:
4. 添加作者:
(1)修改AuthorController,添加如下方法:
(2).同樣我們需要在View\Author目錄下建立一個AddAuthor.aspx
修改AddAuthor.aspx如下:(黃色展示了MVC Html Helper的一些用法)
5. 修改作者:
(1) 添加如下方法到AuthorController
(2)在View\Author下添加EditAuthor.aspx
修改EditAuthor.aspx.cs如下:
修改EditAuthor.aspx如下
疑問: 我用上面紅色(注釋掉的)的方法卻不能走到EditSaved的Action,不知為何,而且報錯,說是超出邊界,哪位兄弟知道原因?謝謝!
6.刪除作者
刪除很簡單,我們在AuthorController裡添加如下方法即可
注意:這裡沒有添加驗證,可以參考上面一篇blog的方法來添加驗證。