創建一個WPF+EF應用程序


     這是我在博客園的第一篇博客,開通此博客的目的是整理學過的知識點,以后再碰到相同的問題后會有文檔可以查詢。

     話不多說,開擼。

      1.打開VS2013建立WPF應用程序,選擇對應的項目。

      2.安裝EF程序包,打開 工具—》NuGet程序包管理器—》程序包管理器控制台,輸入 install-package entityframework。

       

       如上圖所示,已經成功安裝EF 6.1.3到當前解決方案目錄下。

       3.添加空項目XXX.DAL存放數據訪問相關類。

    4.添加空項目XXX.Model存放與數據庫相匹配的模型,並添加相應的數據表如TSysUser類,右鍵點擊項目XXX.Model在輸出類型

        這一欄將控制台應用程序更改為類庫,點擊生成事件,在后期生成事件命令行輸入

          set targetFloder=$(ProjectDir)..\..\Common\
          xcopy /r /y "$(TargetDir)TCMedcine.Model.dll" "%targetFloder%"

        將生成的類庫文件TCMedcine.Model.dll拷貝到與項目同級的Common文件夾下面。

        5.在XXX.DAL項目中添加SysContext繼承DbContext,z在SysCntext添加如下代碼

public class SysContext : DbContext

6.配置鏈接字符串

<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<connectionStrings>
<add name="SysContext" connectionString="Data Source=(local); Database=Test; User ID=sa; Password=123456;" providerName="System.Data.SqlClient"/>
</connectionStrings>

鏈接字符串放到啟動項的配置文件中。


{
public SysContext()
: base("name=SysContext")
{

}

public DbSet<TSysUser> TSysUsers { get; set; }

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingEntitySetNameConvention>();
}

 ORM中O就是SysContext中的TSysUsers,就是對象,R是數據庫中的表,M是O和R的映射關系。ORM對傳統方式的改進:

充當橋梁,實現了關系數據和對象數據的映射,通過映射自動產生SQL語句。對常用的操作,節省了寫SQL的步驟。

 創建SysContext類主要來完成EF的功能,步驟如下:

     1) 為每一個entity set創建一個DbSet,在EF中,通常情況下一個entity set對應數據庫中的一張表,一個entity對應表中的一行。

     2) 指定連接字符串構造函數中的base(“name=SysContext”).

     3)  指定單數形式的表名

             modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();

    默認情況下會生成復數形式的表,如TSysUsers.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM