我正在从udemy做一个在线ASP.net MVC5课程。我使用EF迁移为我的表添加了一个新列。
添加名称列
namespace Vidly.Migrations
{
using System;
using System.Data.Entity.Migrations;
public partial class AddNameToMembershipTypes : DbMigration
{
public override void Up()
{
AddColumn("dbo.MembershipTypes","Name",c => c.String(nullable:false));
}
public override void Down()
{
DropColumn("dbo.MembershipTypes","Name");
}
}
}
然后我更新了我的数据库以进行此迁移。
确认的屏幕截图
Customer和MembershipTypes表具有一对一的关系,我可以从Customer Table中检索MembershipTypes字段。
唯一的问题是新专栏"名称"我刚刚添加到MembershipTypes,因为我在最顶层描述的不是从View中检索的。
以下是视觉确认(虽然我尝试添加姓名但收到错误)
当我强行尝试访问姓名时,我得到了以下
我无法理解为什么我无法访问名称字段,因为我已经使用迁移添加了一些值并更新了我的数据库。 我的感觉是客户和会员类型之间的联系需要以某种方式更新,但我不知道如何?
答案 0 :(得分:2)
AddNameToMembershipTypes
中的更改仅用于更新数据库架构。这不会自动更新您的实体类。您仍然需要将新属性添加到MemberShipType
类。
public class MembershipType
{
public string Name { set;get;} // This one here
// Your existing properties here
public int DurationInMonths { set;get; }
}