1.mvc5+ef6+Bootstrap 項目心得--創立之初
2.mvc5+ef6+Bootstrap 項目心得--身份驗證和權限管理
3.mvc5+ef6+Bootstrap 項目心得--WebGrid
在使用ef6的時候,如果木有系統的學習,很多人都是一臉蒙的吧。經過N天的摸索和網上查找資料學習,總結了下。這裡簡單說一下ef+bootstrap的安裝和使用。
打開vs2015建立web項目,選擇Empty,而不是MVC。然後下面有三個勾選項:Web Froms,MVC,Web Application。把MVC的勾選項。然後會看到項目裡面隻有ControllerS,Models,Views 三個空的檔案夾。
安裝ef6的步驟:
- 工具——NuGet包管理器——程式包管理控制平台。
- 輸入“Install-Package EntityFramework” ——回車,等待安裝好
- 輸入“Install-Package bootstrap”
需要用到的2個子產品安裝好了。接下來就是使用code first裡面的Migrations。
1. 在Models下建立一個Class作為資料庫的Table用。
2.繼承DbContext。
public class LifeMContext : DbContext
{
public LifeMContext() : base("LifeMContext")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
public DbSet<User> UserList { get; set; }
public DbSet<AddressInfo> AddressInfoList { get; set; }
public DbSet<EnumDictionary> EnumDictionaryList { get; set; }
}
3.記得要在web.config裡面加上資料庫連結
<connectionStrings>
<add name="LifeMContext" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\LifeM.mdf;Initial Catalog=LifeM;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
4.在程式包管理控制平台輸入“enable-migrations -contexttypename LifeManager.Models.LifeMContext”。“enable-migrations -contexttypename” 是指令建立migrations檔案夾和Configuration.cs用的。注意是“enable-migrations -contexttypename” 空格不能少。
internal sealed class Configuration : DbMigrationsConfiguration<LifeManager.Models.LifeMContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = false;
ContextKey = "LifeManager.Models.LifeMContext";
}
protected override void Seed(LifeManager.Models.LifeMContext context)
{
// This method will be called after migrating to the latest version.
// You can use the DbSet<T>.AddOrUpdate() helper extension method
// to avoid creating duplicate seed data. E.g.
//
// context.People.AddOrUpdate(
// p => p.FullName,
// new Person { FullName = "Andrew Peters" },
// new Person { FullName = "Brice Lambson" },
// new Person { FullName = "Rowan Miller" }
// );
//以下插入資料會出現中文亂碼,VS2015需更新update2
//var guid = Guid.NewGuid().ToString();
//context.EnumDictionaryList.AddOrUpdate(t=>t.Value,
//new EnumDictionary() { GuidKey = guid, Value = "系統管理", Url = "#", ParentGuid = "0", OrderASC = 1, Level = 1 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "使用者管理", Url = "#", ParentGuid = guid, OrderASC = 1, Level = 2 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "機構管理", Url = "#", ParentGuid = guid, OrderASC = 2, Level = 3 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "角色管理", Url = "#", ParentGuid = guid, OrderASC = 3, Level = 4 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "區域管理", Url = "#", ParentGuid = guid, OrderASC = 4, Level = 5 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "系統安全", Url = "#", ParentGuid = "0", OrderASC = 1, Level = 5 });
//context.SaveChanges();
}
}
5.在程式包管理控制平台輸入“add-migration initial”,等待在輸入“update database”。這個時候在項目中有個App_Data檔案夾,裡面就是資料庫啦。之後在Models下建立class或者修改class後,使用“add-migration initial” “update database”2條指令即可更新資料庫。注意資料庫裡面有個“__MigrationHistory”表 一定不能删,一定不能删,一定不能删。後果自己試試就知道了- -!
如果覺得敲指令麻煩可以使用界面管理NuGet。右鍵項目——管理NuGet程式包。直接輸入“EntityFramework”,“Bootstrap”,下載下傳就好了。需要加NPOI,JSON,Jquery UI等等都可以在這裡搜尋,安裝。
如果覺得文章不錯,請給個推薦(◕ˇ◞◟ˇ◕),謝謝。