ASP.NET使用EF时的seed方法以及初始数据的构造

本文介绍了ASP.NET中使用Entity Framework(EF)的Seed方法,该方法在数据库迁移至最新版本时自动调用。通过Seed(),开发者可以在数据库创建时添加固定不变或测试数据,如公司地址等。文中提到了配置configuration.cs文件的示例,并强调了使用Seed()时的注意事项,包括guid字段的初始化和外键关联的表示方式。
摘要由CSDN通过智能技术生成

seed方法:

Seed() 方法是什么呢? 依照它原来的注解 "This method will be called after migrating to the latest version", 字面上是说这个 Seed() 方法会在我们 migrate 到最近的版本时会被呼叫; 实际上就是说, 如果我们已经设定好 Migration , 当我们执行了 Update-Database 指令时, EF 就会自动去呼叫并执行这个 Seed() 方法。

Seed() 方法会在你每次你执行 Update-Database 指令时被呼叫一次。所以你可以试试看再加入一笔 "凯达格达大道3号", 再执行一次 Update-Database 指令, 资料库中就会多出那一笔。换句话说, 你可以使用同样的方法一直往资料库裡加入资料。
话说回来, 或许你必须思考一下, 你会在什么时候使用 Seed() 方法在资料库中塞入资料? 
一般而言, 我们在程式中套用 EF 绝对不是为了可以使用 Seed() 方法塞入资料。

但是我们一定有很多时候会希望在资料库一建立时就加上一些固定而不容易异动的资料,例如自己公司的地址, 或者一些测试资料。所以 Seed() 方法的确是开发者的绝佳帮手。

namespace WechatCommerceSys.DAL.Migrations
{
    using System;
    using System.Collections.Generic;
    using System.Data.Entity;
    using System.Data.Entity.Migrations;
    using System.Linq;
    using WechatCommerceSys.M
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值