使用Code First模式实现给实体类添加复合主键,代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Web;
namespace MyFirstMvcApp.Models
{
/// <summary>
/// 登录记录
/// </summary>
public class LoginRecordInfo
{
/// <summary>
/// 登录的邮件地址(主键)
/// </summary>
[Key,Column(Order=1)]
public string Email { get; set; }
/// <summary>
/// 登录的客户端IP
/// </summary>
public string LoginHostIP { get; set; }
/// <summary>
/// 登录的客户端主机名
/// </summary>
public string LoginHostName { get; set; }
/// <summary>
/// 登录时间(主键)
/// </summary>
[Key,Column(Order=2)]
public DateTime LoginTime { get; set; }
}
}
使用特性Key和Column设置复合主键,Key表示字段是主键,Order用来设置主键的顺序。使用Key和Column需要添加命名空间:
Key的命名空间:System.ComponentModel.DataAnnotations;
Column的命名空间:System.ComponentModel.DataAnnotations.Schema;