亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Entity Framework淺析

        2016-03-16 09:35:25王志丹
        科技與創(chuàng)新 2016年4期

        王志丹

        摘 要:Entity Framework實體框架是以ADO.NET為基礎,支持面向數據軟件應用程序的技術。其以Entity Data Model為主,采用抽象化數據結構,可將數據庫的E/R模型轉換成對象模型,其屬性由庫表字段轉換而來,關聯系統(tǒng)則由關系轉換而來,最終將數據庫對象轉換為應用程序對象,目的是使編程員不直接在關系存儲架構上編程。此外,采用該框架創(chuàng)建數據訪問應用程序是通過創(chuàng)建概念應用程序模型進行的,可減少面向數據應用程序的代碼量。

        關鍵詞:EDM;ADO.NET;Entity Framework;編程員

        中圖分類號:TP311.52 文獻標識碼:A DOI:10.15913/j.cnki.kjycx.2016.04.071

        在應用Entity Framework 技術時,會針對數據庫生成模型和映射信息,并按照遵循1∶1的映射原則。如果要對數據表中的數據進行增添、刪除、修改、查詢等操作,則可在代碼中直接操作。但事實上,一些操作違背了程序開發(fā)以應用為導向的概念模型的出發(fā)點,且這樣的處理方式易使對象概念不清晰,也不利于減少編寫程序的代碼量。

        1 Entity Framework核心概述

        Entity Data Model簡稱EDM,指實體數據模型。Entity Framework是基于EDM進行數據訪問的。EDM屬于一個規(guī)范,用于定義在實體框架基礎上生成的應用程序和使用數據。應用程序域中的實體和關系是由EDM的應用程序在設計架構中定義的。應用程序代碼使用的可編程類則是由設計架構生成的,存儲架構是在此模型中的另一個架構,用于持久保留應用程序數據的存儲架構。而設計架構與存儲架構間的連接橋梁為映射規(guī)范。設計架構中生成可編程對象模型后,由存儲架構將其映射到設計架構,從而使起到橋梁作用的映射規(guī)范可有效地將存儲架構與可編程類連接在一起。此外,EDM還可提供在EDM架構和映射規(guī)范中使用的基本實體和關系類型,開發(fā)人員在設計應用程序時,可根據需要使用這些實體和關系類型。

        EDM由概念模型、存儲模型、映射三大部分組成。概念模型主要用于描述實體類,由概念架構、語言定義;存儲模型又稱邏輯模型,主要描述數據庫中的對象,比如表、主鍵、列、索引等,由存儲架構、語言定義,映射包含存儲模型中的列和概念模型中的實體屬性。

        具體化的對象用數據讀取器以序列化格式讀取,進而可得到EDM定義的實體,其能在CLR語言中編程、更新、保存,不需要使用嵌入式SQL字符串或其他數據庫語法。雖然用來管理應用程序的數據實例均具有檢索優(yōu)勢,但存儲模型已經過優(yōu)化,能有效地檢索、存儲數據。

        數據模型是基于概念的一個整合體,體現于數據的類型、屬性、關系、約束條件等方面,進而在應用程序的代碼中體現。

        2 Entity Framework的對象關系映射

        在兩套截然不同的理論中,產生了以下概念:①基于“軟件工程”的基本原則,比如封裝、耦合、聚合,并在此基礎上,產生了面向對象;②由“數學理論”產生的關系數據庫概念。由此可見,產生了阻抗不匹配的問題。為了解決該問題,從而提高開發(fā)效率,出現了對象關系映射技術(ORM)。

        開發(fā)一個不使用ORM的應用程序時,可能會用到在數據庫中生成保存、讀取、刪除對象信息等訪問層的代碼,并將讀取對象數據、改變對象狀態(tài)等的方法寫入DAL中,這些代碼雖然相似,但不能被重用。

        為了解決以上問題,可從O/R入手(O為對象,R為關系)。絕大多數的程序都會涉及到關系數據庫。當對象信息發(fā)生變化時,需要將這類信息保存在關系數據庫中。

        ORM系統(tǒng)是隨著面向對象軟件開發(fā)方法的發(fā)展而產生的。面向對象的開發(fā)方法是當今企業(yè)級應用開發(fā)環(huán)境中的主流開發(fā)方法,關系數據庫是企業(yè)級應用環(huán)境中永久存放數據的主流數據存儲系統(tǒng)。對象和關系數據是業(yè)務實體的兩種表現形式。業(yè)務實體在內存中表現為對象,在數據庫中表現為關系數據。內存中對象之間存在關聯和繼承的關系,而在數據庫中,關系數據無法直接表達多對多的關聯和繼承關系。因此,ORM系統(tǒng)一般以中間件的形式存在,主要表達程序對象到關系數據庫數據的映射。

        ORM系統(tǒng)完成了“實體對象”到“關系數據庫表”的透明化、自動化、持久化,提供了易于理解的模型化、概念性的數據表達方法。ORM系統(tǒng)包括4部分:①API,可對持久類對象進行CRUD操作;②規(guī)定類、類屬性查詢規(guī)則的API或語言;③規(guī)定mapping metadata的工具;④一種可以使ORM與對象數據共同進行dirty checking、lazy association fetching以及其他優(yōu)化操作的技術。

        應用程序、Entity Framework、EDM、ORM、ADO.NET數據提供者與數據庫間的關系如圖1所示。

        參考文獻

        [1]謝日星.ADO.NET Entity Framework建模技術研究[J].科技傳播,2010(11).

        [2]沈霞菲,王建中.基于.NET Entity Framework數據庫訪問機制的設計與應用[J].現代電子技術,2014(12).

        [3]吳蕓.基于Web的網上書店系統(tǒng)的設計與實現[D].北京:電子科技大學,2013.

        〔編輯:張思楠〕

        日韩少妇无码一区二区免费视频| а天堂中文在线官网| 99久久99久久精品国产片果冻| 久久精品国产亚洲Av无码偷窍| 亚洲一区二区三区一区| 一区二区三区人妻少妇| 性色做爰片在线观看ww| 欧美日韩国产一区二区三区地区| 日本红怡院东京热加勒比| 国产亚洲精品色婷婷97久久久| 久久久久久亚洲av无码蜜芽| 97se在线观看| 成人精品国产亚洲av久久| 在线精品国产亚洲av蜜桃| 国产午夜无码片在线观看影院| 国产精品三级一区二区按摩| 日日噜噜夜夜久久密挑| 国产高清成人在线观看视频| 日本不卡一区二区三区在线| 亚洲VA不卡一区| 久久2020精品免费网站| 国产猛男猛女超爽免费视频| 精品久久久久久777米琪桃花| 尤物AV无码色AV无码麻豆| 成人久久精品人妻一区二区三区| 天堂中文官网在线| 午夜国产在线| 亚洲精品一区二区三区日韩| 亚洲日韩成人无码| 久久人妻少妇嫩草av蜜桃| 中文字幕大乳少妇| 亚洲无精品一区二区在线观看| 中文亚洲av片在线观看| 久久精品国产亚洲AV成人公司| 亚洲国产综合精品中文| 欧美大胆性生话| 欧美午夜一区二区福利视频| 亚洲国产精一区二区三区性色 | 久久午夜无码鲁丝片直播午夜精品| 漂亮人妻出轨中文字幕| 美女av一区二区三区|