实体框架代码优先和多个程序集

2023-12-14

我在与其基类不同的程序集中有一个子类。父级是用于 EF Code First 的 POCO 类。

当我尝试将继承类的实例添加到数据库时,我得到无效操作异常: “无法找到标识为‘Foo.Bar.MyInheritedClass’的类型的对象映射”。

如果子类与基类位于同一程序集中,则它可以正常工作。

在常规 EF 中解决方案似乎是打电话给ObjectContext.MetadataWorkspace.LoadFromAssembly(程序集)。但我不明白这与 Code First 有何关系。

有什么建议吗?

我在用着实体框架 4.1 RC。


我通过继承第一个程序集的 DbContext,为派生类添加 DbSet,然后向其中添加派生类型的新实例来解决此问题。

在 MSDN 论坛上发布代码here.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实体框架代码优先和多个程序集 的相关文章

随机推荐

  • 如何在按钮单击事件上从 DataGridView 填充文本框

    我想从 DataGridView 控件填充按钮单击事件的数据 我的代码是这样的 for int i 0 i lt dgv EmpAttList Columns Count i txt EnrollNo Text this dgv EmpAt
  • 在 R 中转换 data.frame

    我有以下数据框 foo lt data frame abs cbind rnorm 3 rnorm 3 mean 8 rnorm 3 mean 9 rnorm 3 mean 1 colnames foo lt c w x y z rowna
  • 返回双精度数组的导出函数

    在 Golang 中如何导出返回双精度数组的函数 以前可能的方式现在似乎返回 运行时错误 cgo 结果有 Go 指针 export Init func Init filename string C int unsafe Pointer va
  • indexOf 区分大小写吗?

    indexOf String 方法区分大小写吗 如果是这样 是否有不区分大小写的版本 The indexOf 方法均区分大小写 您可以通过预先将字符串转换为大写 小写来使它们 粗略地 以一种破坏的方式 但适用于很多情况 不区分大小写 s1
  • 递归代替多个嵌套的 for 循环?

    我在尝试更新嵌套 for 循环以使用递归时遇到一些问题 使用递归时是否可以从早期的 for 循环访问 a b 和 c 变量 下面是我尝试将其转换为递归调用的简单示例 for int a 0 a lt 10 a for int b 0 b l
  • 防止Fragment的restoreViewState()

    我有一个对象Foo可以使用片段进行配置 FooFragment Foo 类包含对 FooFragment 的静态引用和方法公共片段 getConfigurationFragment 此方法将当前对象分配给 FooFragment 并返回它
  • 处理导航栏按钮事件时应用程序崩溃

    在我的应用程序中 我有一个导航栏按钮 允许用户弹回到导航堆栈的顶部 这已经存在了一段时间并且一直运行良好 但是 当我使用 MT 4 0 构建时 它崩溃了 in constructor UIButton btn UIButton FromTy
  • 在 WPF 应用程序中显示 PDF [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 关于如何在 WPF Windows 应用程序中显示 PDF 文件有什么想法吗 我正在使用以下代码来运行浏览器 但是Browser Navigate方法没有做任何事情 WebBrows
  • 我需要在 HTML 中转义什么(JSON 响应)

    我的 JSON 响应如下所示 rc 200 test user div class sub1 div class avatar a href blah blah a br strong 0 strong div div class sl p
  • 使用 C# 比较 SQL Server 中的两个日期时间值

    我想知道如何比较两个日期时间值 一个是从 sql 数据库检索的 另一个是用 c 获取的当前日期时间值 Beware when comparing DateTimes generated within C The DateTime struc
  • 为什么赋值运算符应该返回对象的引用?

    我正在对 C 进行一些修改 并且目前正在处理运算符重载 特别是 赋值 运算符 我在网上查找并发现了多个讨论该问题的主题 在我自己的笔记中 我把所有的例子都记下来了 比如 class Foo public int x int y void o
  • 使用 Logstash,如何根据每行匹配相同的时间戳来组合行?

    MarkLogic 日志文件通过打印具有相同时间戳 精确到毫秒 的行来表示多行 您可以在这段代码中看到这一点 2014 05 09 18 47 33 844 Info Dev Xdbc file store get file xqy url
  • 在android中读取所有联系人的电话号码

    我使用此代码来检索所有联系人姓名和电话号码 String projection new String People NAME People NUMBER Cursor c ctx getContentResolver query Peopl
  • Mysql按工作日分组,填写缺少的工作日

    我的 MySQL 查询有问题 该查询按工作日对表中的数据进行分组 我需要它来填充数据中缺失的工作日 例如下面 SQL 示例中的星期日 工作日 7 SQL小提琴 MySQL 5 6 架构设置 create table test id INT
  • Django - 过滤外键属性

    我正在尝试根据特定字段的值过滤 Django 中的表ForeignKey 例如 我有两个模型 class Asset models Model name models TextField max length 150 project mod
  • HttpPost -> 重定向 -> 所需响应的位置或正文

    以下 Java 代码将数据 POST 到网站 然后作为响应进行重定向 状态 302 它在我的 PC Eclipse Java Ubuntu 上完美运行 完全符合我的要求 我尝试了一切来发布代码功能 但我就是做不到 Java代码 Prepar
  • Hibernate、HQL 和带限制的更新

    是否可以限制使用 Hibernate HQL 更新的行数 例如 Query q em createQuery UPDATE MyObj o Set o prop prop q setParameter prop foo q setMaxRe
  • 信号处理程序和多线程的易失性

    据说信号处理程序需要 volatile 例如 volatile int flag 1 volatile is needed here void run while flag do someting void signal handler i
  • Conda setuptools install 将 shebangs 更改为默认 python 安装

    我遇到一个问题 通过 setuptools 安装到 python anaconda 的软件包将 shebangs 重写到了错误的位置 我已经安装了 python anaconda 和 setuptools 包 我已经验证 python 可执
  • 实体框架代码优先和多个程序集

    我在与其基类不同的程序集中有一个子类 父级是用于 EF Code First 的 POCO 类 当我尝试将继承类的实例添加到数据库时 我得到无效操作异常 无法找到标识为 Foo Bar MyInheritedClass 的类型的对象映射 如