zoukankan      html  css  js  c++  java
  • Entity Framework Tutorial Basics(35):Local Data

    Local Data

    The Local property of DBSet provides simple access to the entities that are currently being tracked by the context, and have not been marked as Deleted. Local keeps track of entities whose entity state is added, modified and unchanged. For example:

     using System.Data.Entity;
    
     class Program
     {
          static void  Main(string[] args)
          {
              using (var ctx = new SchoolDBEntities())
              {
                    ctx.Students.Load();
    
                    ctx.Students.Add(new Student() { StudentName = "New Student" });
                    
                    var std1 = ctx.Students.Find(1); // find student whose id = 1
                    ctx.Students.Remove(std1);// remove student whose id = 1
                    
                    var std2 = ctx.Students.Find(2); // find student whose id = 1
                    std2.StudentName = "Modified Name";
                    
                    // Loop over the students in context's local.
                    Console.WriteLine("In Local: ");
                    foreach (var student in ctx.Students.Local)
                    {
                        Console.WriteLine("Found {0}: {1} with state {2}",
                                            student.StudentID, student.StudentName,
                                            ctx.Entry(student).State);
                    }
    
                    // Get all students from db.
                    Console.WriteLine("
    In DbSet query: ");
                    foreach (var student in ctx.Students)
                    {
                        Console.WriteLine("Found {0}: {1} with state {2}",
                                            student.StudentID, student.StudentName,
                                            ctx.Entry(student).State);
                    }
    
              }
          }
     }
    Output:

    In Local :
    Found 0: New Student with state Added
    Found 2: Modified Name with state Modified
    Found 3: Student3 with state Unchanged
    In DbSet query:
    Found 1: New Student with state Deleted
    Found 2: Modified Name with state Modified
    Found 3: Student3 with state Unchanged

    As you can see in the above output, local keeps track of entities whose state is Added, Modified or Unchanged where as DbSet collection contains all the entities whose state is Deleted, Modified or Unchanged.

    Visit MSDN for more information on Local.

  • 相关阅读:
    __ATTRIBUTE__ 你知多少?【转】
    mount源码分析 【转】
    linux下共享内存mmap和DMA(直接访问内存)的使用 【转】
    mmap DMA【转】
    内存映射MMAP和DMA【转】
    进度条,随机数---demo笔记【原创】
    Linux内核抢占与中断返回【转】
    内核随记(三)--同步(1)【转】
    内核随记(三)--同步(2)【转】
    理解Linux中断 (1)【转】
  • 原文地址:https://www.cnblogs.com/purplefox2008/p/5649264.html
Copyright © 2011-2022 走看看