您的位置:首页 > 编程语言 > ASP

看ASP.NET MVC3 自己总结的一些细节

2012-05-23 12:44 337 查看
MODEL 模型(例:我们在三层中的模型层一样,不过多了一个上下文操作对象(继承自DbContext),不过可以在此对字段进行验证 [Required(ErrorMessage = "必须输入父类ID")] )。

VIEW 视图 (视图页面,像我们三层中的UI层一样,只管展示。)

Controller 控制器(像我们的三层中的BLL一样,对数据库的操作和控制跳转到那个页面。)

下面就以一个简单的例子来记录从中得到的一点收获(CURD),增加对MVC的认知。还没有用到(ADO.NET实体数据模型)

1.先新建一个模型(在Model文件夹上面新建一个类).

/// <summary>
    /// 实体类
    /// </summary>
    [Table("Category")]//对应表名
    public class CategoryModels
    {
        public int Id { get; set; }
        [Required(ErrorMessage = "必须输入分类名称")] //验证规则 
        public string Categoryname { get; set; }
        [Required(ErrorMessage = "必须输入父类ID")]  //验证规则 
        public int Followid { get; set; }
    }

    /// <summary>
    /// 上下文操作对象
    /// </summary>
    public class CategoryModelsDBContext : DbContext
    {
        /// <summary>
        /// 初始化
        /// </summary>
        static CategoryModelsDBContext()
        {
            Database.SetInitializer<CategoryModelsDBContext>(null);
        }
        public DbSet<CategoryModels> Category { get; set; }
    }
2.建立控制器(在Controller上面新建一个控制器(一般是实体类名在Controller))

a. 先要引用实体类的命名空间

b.列表页

//分类的上下文
        CategoryModelsDBContext db = new CategoryModelsDBContext();
        public ActionResult Index()
        {
            var categorys = (from a in db.Category
                            select a).ToList();
            return View(categorys);//返回所有
        }
c.在Index()方面上面,增加对应视图(选择强类型的视图,类选择对应的)




d.列表的Index.cshtml中可以看到

@foreach (var item in Model) {
    <tr>
        <td>
            @Html.ActionLink("编辑", "Edit", new { id=item.Id }) |
            @Html.ActionLink("详细", "Detail", new { id=item.Id }) |
            @Html.ActionLink("删除", "Delete", new { id=item.Id })
            
        </td>
        <td>
            @item.Categoryname
        </td>
        <td>
            @item.Followid
        </td>
    </tr>
}
后面是增加,查看详细,删除的操作了。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: