如何从EF扩展Entity?

2024-03-06

EF 创建的所有实体都是分部类。所以它是可扩展的。假设我有像 Person 这样的实体

partial class Person{FirstName, LastName, .....}

然后我想添加一个计算属性名称,例如:

partial class Person{

[DataMember]        
public string Name
{
   get { return String.Format("{0} {1}", this.FirstName, this.LastName); }
}

partial void OnFirstNameChanged()
{
  //.....
  this.ReportPropertyChanged("Name");
}

partial void OnLastNameChanged()
{
  //.....
  this.ReportPropertyChanged("Name");
}
//....
}

然后对于数据更新操作我收到以下错误: 属性“名称”在实体对象上没有有效的实体映射。有关更多信息,请参阅实体框架文档。

如何解决这个问题?


我刚刚遇到了同样的错误。 不要使用“ReportPropertyChanged()”,而是使用“OnPropertyChanged()”。就这样吧。

ReportPropertyChanged() 仅适用于真实实体对象(例如 FirstName 和 LastName,例如真实数据库字段),但不适用于那些计算对象(例如 Name,仅存在于您的部分类中)。

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

如何从EF扩展Entity? 的相关文章

随机推荐

  • 在 Devise on Rails 中使用单独的身份验证模型

    我有一个简单的解决方案 我用以下对象自己制作 Account 具有 token 字段 在身份验证时返回并在 API 调用中使用 验证 具有 auth type auth id 和对帐户的引用 我有一个单独的验证模型能够连接多种登录方式 设备
  • Android SimpleDateFormat格式问题

    我正在尝试将日期格式化为所需的格式 但我收到的日期错误 这就是我正在做的事情 我收到的日期如下 3 24 2012 8 25 03 AM 3 23 2012 2 57 01 PM 3 15 2012 9 28 01 AM 并想将它们展示为
  • 为什么 KeyPairGenerator.genKeyPair() 这么慢

    我有一些 Java 代码 当我运行函数时KeyPairGenerator genKayPair 工作时间为 40 秒或更长时间 如何改变这种现状呢 如果我跑 openssl req x509 nodes days 365 newkey rs
  • 如何选择.NET版本来编译项目?

    我有VS2005 如何在特定版本的 NET 下编译我的项目 我已经安装了 1 0 2 0 3 0 和 3 5 提前Tnx 恐怕你不能 VS2005仅适用于 NET框架2 0 您需要适当版本的 Visual Studio 才能与其他版本一起使
  • Angular 4文档离线计算机[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想找到 Angular 4 文档的本地 离线版本 https angular io docs htt
  • 如何在 RxJava 中计算移动平均线

    在金融领域 我们通常需要从时间序列数据流中计算移动窗口总值 以移动平均线为例 假设我们有以下数据流 T是时间戳 V是实际值 T0 V0 T1 V1 T2 V2 T3 V3 T4 V4 T5 V5 T6 V6 T7 V7 T8 V8 T9 V
  • 如何将字符串转换为 NSDate?

    我有每当有新的远程通知时收到的字符串 我正在为我的后端使用解析 我检索到的字符串来自 createdAt 列 我试过下面的代码 var ca 2015 07 03T03 16 17 220Z var dateFormater NSDateF
  • 使用带淘汰赛的引导按钮下拉菜单

    我正在尝试使用 Bootstrap 的精美样式按钮下拉菜单 http getbootstrap com components btn dropdowns淘汰赛 不幸的是 下拉菜单是使用链接而不是
  • LISP - 小数点后的数字

    有谁知道如何在 Lisp 中指定浮点数小数点后的位数 假设我在 REPL 上打印此命令 CL USER 3 gt format t 15f float 1 7 I get 0 142857150000000 但是该数字四舍五入到小数点后第
  • 使用 7zip 检测文件是否为存档

    我想使用 SevenZipSharp 来确定文件是否是存档 我知道这是可能的 因为在资源管理器中 如果我将 zip 重命名为 bmp 7zip 仍然会将其识别为存档 edit 换句话说 我希望 7zip 告诉我文件 无论扩展名如何 是否包含
  • ASP.NET 网站的自定义登录机制

    我正在开发一个 ASP NET 网站 我需要摆脱一些自定义但简单的登录机制 我从著名的员工信息入门套件 http eisk codeplex com 这是我到目前为止所拥有的 在 ASP NET 页面上 protected void But
  • Facebook Graph Api 2.1 从用户名获取用户 ID

    我正在寻找一个可以从个人资料网址或 Facebook 用户名中提供用户 ID 的解决方案 example http facebook com username 获取此 url 的用户 ID 而且当我尝试读取朋友 我有朋友相关权限 时 我得到
  • Parse.com 关系查询问题

    我有以下表格名称 aniStudii 和 discipline 我也制作了屏幕截图 正如您所看到的 这些表之间在 mateii 列中存在关系 aniStudii 中 Anul I 列的行具有一个值 另一列具有不同的值 这些值可以在 disc
  • JavaScript 乘以 100 给出奇怪的结果[重复]

    这个问题在这里已经有答案了 I have var a 0 0532 var b a 100 b 应该返回 5 32 但它返回 5 319999999999999 我该如何解决 JSFiddle 在这里 http jsfiddle net 9
  • fseek() 函数中的零偏移量与 SEEK_CUR 有什么用?

    while fread product sizeof Product 1 file 1 product price 2 0 fseek file sizeof Product SEEK CUR fwrite product sizeof P
  • 从 package.json 脚本中调用带有参数的 javascript 函数

    javascript 文件 foo js 具有以下内容 function foo param console log foo called with params console log param module exports foo f
  • 编辑后保留PDB文件格式。

    我有 xxx pdb 文件 ATOM 1910 CB SER 128 45 806 50 621 39 840 1 00 9 36 ATOM 1913 OG SER 128 44 538 51 195 39 571 1 00 9 36 AT
  • Given import java util public class Hancock insert code here list add foo 哪两个代码片段独立插入到第 5 行 编译时不会出现警告 选择两项 A public void
  • 将 FILE * 从 Python / ctypes 传递到函数中

    我有一个库函数 用 C 编写 它通过将输出写入到来生成文本FILE 我想用 Python 2 7 x 包装它 并使用创建临时文件或管道的代码 将其传递到函数中 从文件中读取结果 并将其作为 Python 字符串返回 这是一个简化的示例来说明
  • 如何从EF扩展Entity?

    EF 创建的所有实体都是分部类 所以它是可扩展的 假设我有像 Person 这样的实体 partial class Person FirstName LastName 然后我想添加一个计算属性名称 例如 partial class Pers