C#的这种entity 很像Annotation java的写法..

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data.Linq;using System.Data.Linq.Mapping;namespace LinqObject.models{    [Table(Name = "Player")]    public class PlayerInfoVO    {                                 private string name;        [Column(Name="name")]        public string Name        {            get { return name; }            set { name = value; }        }                                 private int id;        [Column(IsPrimaryKey=true,Name="id")]        public int Id        {            get { return id; }            set { id = value; }        }                                 private int level;        [Column(Name = "level_id")]        public int Level        {            get { return level; }            set { level = value; }        }        private EntityRef
_myLevel; [Association(Storage="_myLevel",ThisKey="level_id")] public EntityRef
_MyLevel { get { return _myLevel; } set { _myLevel = value; } } }}

主表:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data.Linq;using System.Data.Linq.Mapping;namespace LinqObject.models{    [Table(Name="myLevel")]    public class MyLevel{        private int id;        [Column(IsPrimaryKey=true,Name="id")]        public int Id        {            get { return id; }            set { id = value; }        }        private string name;        [Column(Name="name")]        public string Name        {            get { return name; }            set { name = value; }        }        private EntitySet
player; [Association(Storage = "player", OtherKey = "Id")] public EntitySet
Player { get { return player; } set { player = value; } } }}

删除 操作 :

using System;using System.Collections.Generic;using System.Linq;using System.Text;using LinqObject.models;namespace LinqObject.mylinq{    public class ConflictLinq{        public void updatePlayer(int id, string name) {            AINYLinq db = new AINYLinq(@"Data Source=AONAUFLY\SQLEXPRESS;Initial Catalog=MyLINQ;User ID=sa;Password=******");            IQueryable
myList = from o in db.myLevel where o.Id == 0 && o.Name == "Aonaufly" select o; foreach (var o in myList) { Console.WriteLine("Ainy------------------------"); db.myLevel.DeleteOnSubmit(o); } Console.WriteLine("detail section finished."); Console.ReadLine(); if (myList.Any()) { Console.WriteLine("The parent is presesnt in the Orders collection."); try { var ordF = (from o in db.myLevel where o.Id == 0 select o).First(); db.myLevel.DeleteOnSubmit(ordF); Console.WriteLine(ordF.Name); } catch (Exception e) { Console.WriteLine(e.Message); Console.ReadLine(); } } else { Console.WriteLine("There was no parent in the myLevel"); } try { db.SubmitChanges(); } catch (Exception e) { Console.WriteLine(e.Message); Console.ReadLine(); } } }}