MIS2000 Lab. -- ASP.NET学习&分享 / ASP.NET案例精编(清华大学出版社)
您好,我来自台湾。很高兴与各位分享一些成果。希望对您有帮助。出版书籍是「ASP.NET案例精编 / 清华大学出版社」。

实战ASP.NET MVC 1.0 #3,新增一笔资料(Create / Add)

http://www.dotblogs.com.tw/mis2000lab/archive/2009/08/12/mvc_3_add.aspx.aspx

 

 

完成了前面两个范例,能做出简单的主细表(Master-Details)

这个范例,我们将要尝试着「新增一笔数据」到数据库里面。

 

这次的范例,是从 http://www.asp.net/learn/mvc/tutorial-21-vb.aspx 这个范例小改而来。

如果以下说明,尚有不详细的地方,建议您以原厂文件为准。

 

因为微软的教学范例,在这个功能上,漏了两个重点,

唯恐各位跟著作,却无法新增数据??

所以小弟狗尾续貂,来作一点小小补充

 

...........................................................................................................................................................................

延续前两篇文章的范例:

1.  在 /controller目录底下,打开 HomeController.vb档案。撰写以下程序

    ' 第一个Create Function,新增一笔资料的画面,没有参数
    ' GET: /Home/Create
    Function Create() As ActionResult

        Return View()
    End Function

    ' == 第二个Create Function,新增一笔并且回写数据库
    ' POST: /Home/Create

    <AcceptVerbs(HttpVerbs.Post)> _
    Function Create(<Bind(Exclude:="id")> ByVal testToCreateAs test) As ActionResult
        '--重点!!这一行 <Bind(Exclude:="id")>很重要,把testTable里面自动编号的id字段,排除在外!!

        Try
            If NotModelState.IsValid Then
               Return View()
            End If

            '== 重点!! ==
            _test_db.AddTotest(testToCreate)

            _test_db.SaveChanges()

            ReturnRedirectToAction("Index")  '--新增一笔数据以后,要重新导向回到 Index.aspx

        Catch
            ReturnView()
        End Try

    End Function

 

2. 产生相关的 View。

请用鼠标点选 HomeController.vb档案里面的 Create()

按下鼠标右键,选择「AddView

 就会自动产生一个 /Views/Home目录下的 Create.aspx画面,完全不用动手作。

 重点来了,请您把 id字段那一小段,手动删除之。

 

因为我们 testTable里面的 id字段,设定为P.K. ,所以也让他自动编号。

我们不需要在新增一笔数据时,为 id字段填入任何的值!

 

 

完成以后,您可以试试看.......................................................

.......................................................

.......................................................

 

                                                         想要新增一笔数据,            .......................................................WHY??

 

 请回到一开始的 ADO.NETEntity设定画面 (在本系列的第一篇文章)

底下的画面,要稍作修改。才能正常运作。

 

 

 

 这次的范例,是从 http://www.asp.net/learn/mvc/tutorial-21-vb.aspx 这个范例小改而来。

 原厂的教学文章,有两个地方不清楚。分别是 Create() 与Details()两个功能,缺乏或是细节没提醒初学者

小弟分别在上一篇文章、本文之中,

补充这些失落的段落,希望对大家有帮助。

 

 

 

 

 

我的网站,关于 ASP.NET MVC文章都收录在此,

实战ASP.NET MVC 1.0 #1,我的第一支MVC程序,展现所有数据(主细表的Master) (2010-11-02 13:09) 

实战ASP.NET MVC 1.0 #2,主细表(Master-Detail)的Detail部份 (2010-11-02 13:14) 

实战ASP.NET MVC 1.0 #3,新增一笔资料(Create / Add)(2010-11-02 13:20) 

实战ASP.NET MVC #4,将范例修改成MVC 2.0版(Onlyfor VS 2010) (2010-11-02 13:25) 

实战ASP.NETMVC 2.0 #5,删除一笔记录(2010-11-02 13:30)

posted on 2010-11-02 13:20  MIS2000 Lab.  阅读(288)  评论(0编辑  收藏  举报


ASP.NET案例精编——适用于VS 2005/2008(配光盘)
 

当当网购买 http://product.dangdang.com/product.aspx?product_id=20583373&ref=search-1-pub