Preview

The ADO.NET Entity Framework

Powerful Essays
Open Document
Open Document
2319 Words
Grammar
Grammar
Plagiarism
Plagiarism
Writing
Writing
Score
Score
The ADO.NET Entity Framework
ADO.NET Entity Framework: Raising the Level of Abstraction in Data Programming
Pablo Castro
Microsoft Corporation One Microsoft Way Redmond, WA, 98052, USA pablo.castro@microsoft.com

Sergey Melnik
Microsoft Research One Microsoft Way Redmond, WA, 98052, USA sergey.melnik@microsoft.com

Atul Adya
Microsoft Corporation One Microsoft Way Redmond, WA, 98052, USA adya@microsoft.com

ABSTRACT
The ADO.NET Entity Framework provides a persistence layer for .NET applications that allows developers to work at a higher level of abstraction when interacting with data and data-access interfaces. Developers can model and access their data using a conceptual schema that is mapped to a relational database via a flexible mapping. Interaction with the data can take place using a SQLbased data manipulation language and iterator APIs, or through an object-based domain model in the spirit of object-to-relational mappers. We demonstrate how the Entity Framework simplifies application development using sample scenarios. We illustrate how the data is modeled, queried and presented to the developer. We also show how the provided data programming infrastructure can result in easier-to-understand code by making its intent more explicit, as well as how it can help with maintenance by adding a level of indirection between the logical database schema and the conceptual model that applications operate on. Categories and Subject Descriptors: H.2 [Database Management], D.3 [Programming Languages] General Terms: Algorithms, Management, Design, Languages Keywords: Data Programming, Conceptual Modeling, ADO.NET

support for the language-integrated query (LINQ [5]) mechanism in the upcoming version of C# and Visual Basic. Today, most enterprise data is stored in relational databases. The Entity Framework provides a flexible mechanism for mapping higher-level application models to existing relational schemas. It supports various persistence strategies and helps build new applications on



References: [1] A. Adya, J. A. Blakeley, S. Melnik, S. Muralidhar, and the ADO.NET Team. Anatomy of the ADO.NET Entity Framework. In SIGMOD, 2007 [2] P. A. Bernstein, S. Melnik, J. E. Churchill. Incremental Schema Matching. In VLDB, 2006 [3] J. A. Blakeley, S. Muralidhar, A. Nori. The ADO.NET Entity Framework: Making the Conceptual Level Real. In ER, 2006 [4] W. R. Cook, A. H. Ibrahim. Integrating Programming Languages and Databases: What is the Problem? ODBMS.ORG, Expert Article, Sept. 2006 [5] E. Meijer, B. Beckman, G. M. Bierman. LINQ: Reconciling Objects, Relations and XML in the .NET Framework. In SIGMOD, 2006 [6] S. Melnik, A. Adya, P. A. Bernstein. Compiling Mappings to Bridge Applications and Databases. In SIGMOD, 2007 } } The “VALUE” keyword in the select clause eliminates the rowwrapper that otherwise would be generated by the system if we simply had “o” in the projection list. While this version of the code has identical functionality to the earlier one, the actual code has significantly fewer database-specific constructs; it does not explicitly create and initialize a connection, nor does it need configuration information inside the program. All of this information is captured during code generation and stored in external configuration files. Also, the query results are .NET objects and not rows and columns. 1072

You May Also Find These Documents Helpful

  • Satisfactory Essays

    The data access object (DAO) software program design pattern encapsulates use of data by concealing its difficulty from end users (University of Phoenix, 2005). This design pattern is a concept offering an abstract interface to a database or perseverance method, which it only provides a few specified functions excluding the visibility of the database particulars. The DAO includes a mapping from the software calls to its perseverance layer that isolates the general public interface of the DAO.…

    • 579 Words
    • 3 Pages
    Satisfactory Essays
  • Satisfactory Essays

    Nt1310 Unit 3 Assignment 1

    • 2136 Words
    • 9 Pages

    Sorting, Filtering, and Paging with the Entity Framework in an ASP.NET MVC Application ................... 55…

    • 2136 Words
    • 9 Pages
    Satisfactory Essays
  • Good Essays

    CMGT 400 Week 1 DQs

    • 676 Words
    • 3 Pages

    The project for CIS336 is designed to touch all aspects of the fundamental concepts of database design and logical data modeling covered during the class. The project is team centered and each team will be responsible for designing, developing, and demonstrating the functionality of a database created based on a defined set of business specifications. At the end of the session, each project team will submit the database designed by the team and demonstrate the database's ability to deliver the required information as outlined in the project specifications. All aspects of the project will be ...…

    • 676 Words
    • 3 Pages
    Good Essays
  • Satisfactory Essays

    Kroenke, D. M., & Auer, D. J. (2010). Database Concepts (4th ed.). Retrieved from https://ecampus.phoenix.edu/content/eBookLibrary2.…

    • 553 Words
    • 3 Pages
    Satisfactory Essays
  • Powerful Essays

    A database language must enable the user to create database and table structures to perform basic data management chores.…

    • 1917 Words
    • 8 Pages
    Powerful Essays
  • Good Essays

    One benefit of a relational database management system is that it contains a built-in query language, which lets you obtain immediate answers to the questions you ask about your data. _________________________…

    • 585 Words
    • 3 Pages
    Good Essays
  • Satisfactory Essays

    Bis245 Ilab

    • 2683 Words
    • 11 Pages

    A. Lab # : BSBA BIS245A-1 B. Lab 1 of 7 : Introduction to MS Visio and MS Access C. Lab Overview--Scenario/Summary TCOs: 1. Given a business situation in which managers require information from a database, determine, analyze and classify that information so that reports can be designed to meet the requirements. 2. Given a situation containing entities, business rules, and data requirements, create the conceptual model of the database using a database modeling tool. Scenario: You have been asked to create two conceptual database models using MS Visio Database Model Diagram Template. The purpose of this lab is to have you gain familiarity with the various modeling tools needed to create a conceptual model (entity relationship diagram) of a database. You will create two conceptual models. You will then open an existing Access database to explore database objects and to experiment with simple data manipulation using filters and sorts and to begin elementary work with relationships. Upon completing this lab, you will be able to 1. relying on detailed instructions, create a simple conceptual model for a two-table database using MS Visio; 2. use experience gained in creating the first model to construct a similar conceptual model without the instructions; and 3. download an existing Microsoft Access database file. Open the database; find and identify different database objects in this database.…

    • 2683 Words
    • 11 Pages
    Satisfactory Essays
  • Better Essays

    Given a business system application that needs to retrieve from and write to a relational database using an external sequential or CSV data file format, the student will design, code, and document the business application using a high-level language.…

    • 1818 Words
    • 8 Pages
    Better Essays
  • Good Essays

    Windshield damage is a common occurrence and something that is unavoidable in some circumstances. You could be driving along the street and a penny size pebble hits your windshield. The resulting damage could be astronomical or so small that you barely notice the damage. Overtime, the small crack could escalate into a monumental problem. The good news is that it is possible to repair a damaged windshield. However, repairs depend on a number of other factors too.…

    • 158 Words
    • 1 Page
    Good Essays
  • Powerful Essays

    Assignment1

    • 354 Words
    • 5 Pages

    What problem would you encounter if you tried to create a listing by last name?…

    • 354 Words
    • 5 Pages
    Powerful Essays
  • Good Essays

    Cis 111

    • 790 Words
    • 4 Pages

    “The benefits of using the relational model would result in an easy to use, flexible, high performance database at a low cost.” (Anita, 2010) Therefore, allowing them to participate in the entire design process of the logical construction. The relational model provides an easy and flexible way of manipulating data with a system that offers:…

    • 790 Words
    • 4 Pages
    Good Essays
  • Best Essays

    ITEC 610 Assingement 1

    • 1424 Words
    • 4 Pages

    This paper will explore the relationship between XML and databases and the way that they can be leveraged to provide data exchange on the internet. As XML gains popularity as the format for exchanging information via the internet and has become the language of choice for use in database development for Internet use.Introduction…

    • 1424 Words
    • 4 Pages
    Best Essays
  • Satisfactory Essays

    Using a data-modeling checklist can help database developers design efficient data repositories. Suggest at least two possible scenarios that could take place if one of the steps in the data-modeling checklist (table 6.7 in Chapter 6 of the textbook) is missed.…

    • 160 Words
    • 1 Page
    Satisfactory Essays
  • Good Essays

    Relational Databases

    • 750 Words
    • 3 Pages

    Data for our programs are stored in various formats. The most commonly used format is in the form of a database since databases are not dependent on a single program or hardware platform. These databases are stored in five structures of hierarchical, network, relational, multidimensional, and object-oriented. Hierarchical structure organizes data in a one to many relationship. The network goes of the hierarchical structure by organizing data in a many to many relationship. The relational structure organizes the data in tables and allows the end user to determine the relationship at run time. Multidimensional takes the relational structures concept and uses multi dimensions to organize the data. Object-oriented structure has not only the attributes of the entity, but also contain the operations that can be performed on it.…

    • 750 Words
    • 3 Pages
    Good Essays
  • Powerful Essays

    Cis515

    • 3200 Words
    • 13 Pages

    References: Carter, J. (n.d.). Database Design and Programming with Access, SQL, Visual Basic and ASP.…

    • 3200 Words
    • 13 Pages
    Powerful Essays