首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> ASP.NET 基礎

ASP.NET MVC5 + EF6 Code First 入門完整範例

     編輯:ASP.NET 基礎

一、開發環境與技術棧

  • Visual Studio 2013 Ultimate
  • .NET Framework 4.5、MVC 5、EF 6
  • LocalDB (輕量級 SQL Server Express,適合開發測試,不建議生產環境)

二、建立 MVC 專案與調整版面

選擇「ASP.NET Web 應用程式」→ MVC 範本,修改 _Layout.cshtml 導覽列與 Home/Index.cshtml 首頁內容,建立「聯絡人管理」主題風格。

三、安裝 Entity Framework 6

透過 NuGet 安裝 EntityFramework 套件。

四、建立領域模型

// Contact.cs
public class Contact {
    public int ID { get; set; }
    public string Name { get; set; }
    public DateTime EnrollmentDate { get; set; }
    public virtual ICollection<Enrollment> Enrollments { get; set; }
}

// Enrollment.cs
public class Enrollment {
    public int EnrollmentID { get; set; }
    public int ContactID { get; set; }
    public int GroupID { get; set; }
    public virtual Contact Contact { get; set; }
    public virtual Group Group { get; set; }
}

// Group.cs
public enum GroupName { Friend, Family, Colleague, Schoolmate, Stranger }
public class Group {
    public int GroupID { get; set; }
    public GroupName? GroupName { get; set; }
    public virtual ICollection<Enrollment> Enrollments { get; set; }
}

五、建立 DbContext 與資料庫初始化

// DAL/CommunicationContext.cs
public class CommunicationContext : DbContext {
    public DbSet<Contact> Contacts { get; set; }
    public DbSet<Enrollment> Enrollments { get; set; }
    public DbSet<Group> Groups { get; set; }
}

// DAL/CommunicationInitializer.cs
public class CommunicationInitializer : DropCreateDatabaseIfModelChanges<CommunicationContext> {
    protected override void Seed(CommunicationContext context) {
        // 種子資料略
        base.Seed(context);
    }
}

六、組態設定

<connectionStrings>
  <add name="CommunicationContext" 
       connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=ContactCommunication;Integrated Security=SSPI;" 
       providerName="System.Data.SqlClient" />
</connectionStrings>

<entityFramework>
  <contexts>
    <context type="PCT.Contact.DAL.CommunicationContext, PCT.Contact">
      <databaseInitializer type="PCT.Contact.DAL.CommunicationInitializer, PCT.Contact" />
    </context>
  </contexts>
  <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
  <providers>
    <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
  </providers>
</entityFramework>

七、執行驗證

執行專案,EF 自動建立資料庫與資料表,種子資料寫入成功。

八、小結

本範例示範 MVC5 + EF6 Code First 完整流程:模型定義、DbContext、初始化策略、連線字串組態與自動遷移建庫。LocalDB 適合開發階段,部署生產環境請改用完整 SQL Server。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved