Linq to sql 学习笔记

前提:自己动手写linq映射文件。表User, Project 文件:

    [Table(Name = "Project")]

    public class Project

    {

        private int id;

        private string name;

        private string description;

        private int pmId;

        private EntityRef<User> projectManager;



        [Column(IsDbGenerated = true, Name = "id", Storage = "id", IsPrimaryKey = true)]

        public int Id

        {

            get { return id; }

            set { id = value; }

        }



        [Column(Name = "name", Storage = "name")]

        public string Name

        {

            get { return name; }

            set { name = value; }

        }



        [Column(Name = "description", Storage = "description")]

        public string Description

        {

            get { return description; }

            set { description = value; }

        }



        [Column(Name = "pmid", Storage = "pmId", DbType = "Int NOT NULL")]

        public int PmId

        {

            get { return pmId; }

            set { pmId = value; }

        }



        [Association(Name = "FK_PROJECT_USERS", Storage = "projectManager", ThisKey = "pm", OtherKey = "id", IsForeignKey = true)]

        public User ProjectManager

        {

            get { return projectManager.Entity; }

            set

            {

                User previousValue = projectManager.Entity;

                if (((previousValue != value)

                     || (projectManager.HasLoadedOrAssignedValue == false)))

                {

                    if ((previousValue != null))

                    {

                        projectManager.Entity = null;

                        previousValue.Projects.Remove(this);

                    }

                    projectManager.Entity = value;

                    if ((value != null))

                    {

                        value.Projects.Add(this);

                    }

                }

            }

        }

    }

在执行单元测试时出现异常。  异常:Test method LinqTest.Test.IDaoTest.GetUsersTest threw exception:  System.InvalidOperationException: Class member Project.pm is unmapped.. 解决:OtherKey, ThisKey 必须设置为类的属性名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值