ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理

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

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

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

   ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第1张图片

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

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第2张图片

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

3. 浏览作者

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

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第3张图片

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

修改AllAuthors.aspx.cs如下:

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第4张图片

(3) 修改AllAuthors.aspx如下,

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第5张图片

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

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第6张图片

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

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第7张图片

4. 添加作者:

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

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第8张图片

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

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

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第9张图片

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第10张图片 ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第11张图片

5. 修改作者:

(1) 添加如下方法到AuthorController

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第12张图片

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

修改EditAuthor.aspx.cs如下:

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第13张图片

修改EditAuthor.aspx如下

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第14张图片

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

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第15张图片

6.删除作者

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

ASP.NET MVC+LINQ开发一个图书销售站点(10):作者管理_第16张图片

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

你可能感兴趣的:(mvc,.net,asp.net,asp,LINQ)