EF映射没有外键怎么办

原创 2016年08月30日 21:05:11

      在一些数据库的设计是没有外键的,为了减少测试的成本,我们就把外键给去掉了,而在程序里加上外键的约束。

    最近在做ITOO,发现最新版本的数据库里少缺少了一个外键,而且更新到程序里的EF实体模型也就和原先的不搭。程序自然就生成失败了。但是问题需要解决啊,所以就去看了看EF映射的实体文件,发现了可以做文章的地方。

解决方案

    1、在EF映射的实体文件中,先找到缺少外键的那个实体类文件。比如我要找的类文件是basicstudententities.cs


    2、打开找到的实体类文件,在里面添加属性。比如:我缺少的是 basicclassentities的外键,就添加红圈中的代码。注意如果关系是1:1就是实体类型,如果是1:N的关系,就是ICollection对象集合的类型了。



    3、找到后缀为diagram的文件,根据自己需求填入相应的字符串。比如我添的是红圈的那一行。



    最后重新生成解决方案,生成成功。可是新的问题又来了。

     只要涉及到EF映射的lambda表达式时,就报错: 无法加载 源数据资源。

    我一看就头疼了,知道这是改了EF实体模型的原因。我愁啊。可是该解决还得解决啊。

问题出现原因:由于自己添加EF实体的输入的名称是Model。所以有了以下区别

区别:在配置文件里的三个路径: Model.csdl,Model.ssdl  以及Model.msl 和最开始的BasicModel.csdl,BasicModel.ssdl  以及BasicModel.msl 不一样,于是修正,重新生成,看能不能成功。如果不成功的话往下看。

原始配置文件的内容


    最后一步,把之前的EF实体模型删了,重新建立,输入好正确的名字。包括name 和三个路径。填入正确。把外键也加上了,最后重新生成,运行程序就没事了。










版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Entity Framework(EF)无法对没有主键的视图映射实体

Entity Framework(EF)无法对没有主键的视图映射实体 在使用 Entity Framework 的时候经常会把数据库中的某一个视图映射为EF的实体,但是如果数据库视图中的列没有包含...

EF Code First 导航属性 与外键 学习笔记

一对多关系 项目中最常用到的就是一对多关系了。Code First对一对多关系也有着很好的支持。很多情况下我们都不需要特意的去配置,Code First就能通过一些引用属性、导航属性等检测到模型之间...

EF Code First 导航属性 与外键

EF Code First 导航属性 与外键 一对多关系 项目中最常用到的就是一对多关系了。Code First对一对多关系也有着很好的支持。很多情况下我们都不需要特意的去配置,Cod...

hibernate基于外键的双向1-1关系映射

对于双向1-1关联而言,两端都需要使用@OneToOne注解进行关联,好了废话不多说直接上例子 1、首先创建数据库数据库采用sql sever 2008 r2  创建person表 创建ad...

Hibernate基于外键一对一映射操作实例

实例背景:公民和公民的身份证,是一个一对一的例子,一个公民只有一个身份证。以这个背景开展说明!

hibernate 外键单向关联映射

1、表说明  客户表 create table CUST.CUST_INFO ( cusid VARCHAR2(20) not null,--主键 cusfname ...

主键共享方式和外键方式一对一双向关系映射(参考张龙老师的例子)

1.学生类:Student.java package org.yang.hibernate.model; public class Student {     private Strin...

EF无法映射只包含联合主键字段的表

数据库中的表关系: 映射到EF中: 咦!不对呀!怎么就两张表呀? 对,做项目的时候,我也遇到了这样的情况,不管怎么更新,EF都是这样! 百思不得其解,问问度娘吧! 度娘说: ...

Hibernate关联映射 ---一对一案例分析(基于外键)

Hibernate关联映射 ---一对一案例分析(基于外键) 一  概念分析 1.以Person – IdCard为例,Person为主,IdCard为从     一个人只有一个身份证,一个身份...

Hibernate ORM映射:基于外键的一对一

概念 一一对应关系,要求双方都有对方的引用。 实现方式 在Department这一端设定many-to-one关联关系,但同时给关联到Manager的外键设定唯一约束 创建持久化类 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)