Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)归海一刀
published in(发表于) 2014/1/30 0:52:46
ASP.NET,MVC+LINQ开发一个图书销售站点(10)-作者管理_[Asp.Net教程]

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_[Asp.Net教程]

作者添加、删除、修改,基本和前面的目录管理类似,这里我们更多的用了些MVC 的Html Helper


1、前面我们把数据的存取全部放到BookShopDBDataContext分部类里,但是如果功能很多,那么比较凌乱,我们这里按每一个大点的功能放到一个文件里


首先,我们Model里建立一个DALBase的抽象类,当然你也可以新建一个DAL层。


image


2. 我们再建立一个AuthorDAL内容如下:


image


疑问:上面黄色的地方,我觉得很怪异,因为那个model我是从数据库里get出来的,但是如果这个是new出来的一个Author,而且authorId是数据库已有的,我的意思是直接根据new出来Author的对数据库来修改,不知有何方法,熟悉Linq的朋友可以告诉我下?


3. 浏览作者


(1).在Controller下新建一个AuthorController


image


(2)对应的,我们需要在View下新建一个Author目录,在Author目录下再建立一个AllAuthors.aspx


修改AllAuthors.aspx.cs如下:


image


(3) 修改AllAuthors.aspx如下,


image


注意,上面两个黄色突出显示的地方,我们用的是authorId而不是id,那么我们如果想Edit时地址显示为Edit/1或Edit/2等,而且能自动传给我们Action方法做参数,我们必须修改默认的路由,打开Global.asax,在最上面添加下面黄色的代码


image


(4) 由于没有数据,我们看到如下的效果:


image


4. 添加作者:


(1)修改AuthorController,添加如下方法:


image


(2).同样我们需要在View\Author目录下新建一个AddAuthor.aspx


修改AddAuthor.aspx如下:(黄色展示了MVC Html Helper的一些用法)


image


image image


5. 修改作者:


(1) 添加如下方法到AuthorController


image


(2)在View\Author下添加EditAuthor.aspx


修改EditAuthor.aspx.cs如下:


image


修改EditAuthor.aspx如下


image


疑问: 我用上面红色(注释掉的)的方法却不能走到EditSaved的Action,不知为何,而且报错,说是超出边界,哪位兄弟知道原因?谢谢!


image


6.删除作者


删除很简单,我们在AuthorController里添加如下方法即可


image


注意:这里没有添加验证,可以参考上面一篇blog的方法来添加验证。







If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759