MVC 5 + EF 6

(一) ??运算符

C#中两个问号(“?”)的作用是判断“?”左边的对象是否为null,如果不为null则使用“?”左边的对象,如果为null则使用“?”右边的对象。

(二)VS安装Entity Framework

工具--库程序包管理器--程序包管理器后台

在程序包管理器控制台中输入以下命令并执行

Install-Package EntityFramework

(三)VS安装PagedList.Mvc NuGet包

程序包管理器控制台中输入以下命令并执行

Install-Package PagedList.Mvc 

 (四)

virtual关键字用于指定属性或方法在派生类中重写

class A
{
public virtual void F(){}
}

class B:A
{
public override void F(){}
}

(五)

using System.ComponentModel.DataAnnotations.Schema;



[DatabaseGenerated(DatabaseGeneratedOption.None)]

该特性可以让你来输入该实体的主键值,而不是让数据库自动生成它。

(六)数据访问层(DAL)

public SchoolContext()

            : base("SchoolContext")

        {

        }

通过传递连接字符串而不是存储在web.config文件的连接字符串名称本身来指定连接。

protected override void OnModelCreating(DbModelBuilder modelBuilder)

        {

            modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();

        }

OnModelCreating方法中的modelBuilder.Convertions.Remove被用来防止生成复数表名。

(七)使用特性来定制数据模型

格式化日期(只显示日期):

using System.ComponentModel.DataAnnotations;



[DataType(DataType.Date)]

[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}",ApplyFormatInEditMode = true)]

 public DateTime EnrollmentDate { get; set; }

 

你可能感兴趣的:(mvc)