为什么导航属性必须是公共的才能创建代理?

2023-12-22

At http://msdn.microsoft.com/en-us/library/dd468057.aspx http://msdn.microsoft.com/en-us/library/dd468057.aspx我读到我想要更改跟踪代理的所有导航属性都需要public and virtual。据我了解,CLR 动态创建 POCO 的子类,并重新实现属性以提供请求的行为。

为此,我了解该财产需要virtual,并且它应该有protected或更高的可访问性。但是,如果我想在程序集中使用它们以方便使用,但又不想公开它们,我不希望它们成为public。这让我想到两个问题。

  1. (为了我对发生的事情的理解)为什么运行时需要属性public而不是protected or internal?

  2. (对于我的实际情况)是否有任何解决方法可以隐藏导航属性,但仍然具有更改跟踪行为?


属性必须是公共(和虚拟)或受保护(和虚拟)的代理才能工作。

代理不是在程序集中预先定义的,因此内部不起作用。

由于明显的原因,私有将不起作用(代理从您的类继承)。

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

为什么导航属性必须是公共的才能创建代理? 的相关文章

  • 使用内存中的单元测试 .ToListAsync()

    下面是由于内存数据库集不支持 ToListAsync 而在 ShouldNotThrow 上失败的测试 我没有方便的确切措辞 但你明白了 如果它很重要 我正在尝试模拟实体框架版本提供的数据库集 6 1 3 TestFixture publi
  • 使用实体框架从 2 个表返回数据

    我正在使用 MVC3 和实体框架 但我需要来自不同表的更多数据 通常我会做这样的事情来从表中获取数据 Table Users id username 在代码中我会做这样的事情来获取所有用户 public static IEnumerable
  • EF6 不从数据库生成外键关联

    PROBLEM 我正在尝试使用数据库优先方法创建 EF6 模型 简单来说 我有2张桌子tblUser and tblMilkMan上有外键关系UserID柱子 但是当我创建一个新的 EDMX 图并添加 2 个表时 我看不到其中的关系 未创建
  • 混合模型优先和代码优先

    我们使用模型优先方法创建了一个 Web 应用程序 一名新开发人员进入该项目 并使用代码优先方法 使用数据库文件 创建了一个新的自定义模型 这 这是代码第一个数据库上下文 namespace WVITDB DAL public class D
  • 更新 EF 6 中子实体的正确方法是什么?

    必须有更好的方法来处理 EF 6 中的子保存 更新 当然 这种重复只是我的失败 Entity public partial class MyParentType public MyParentType this children new H
  • TypeConverter 阻止 EntityFramework 中的 ApplyPropertyChanges

    我遇到了一个有趣的问题 希望不仅对我来说有趣 我正在运行 Entity Framework 1 NET 3 5 和 ASP NET MVC 2 我有一个 Customer 类 它与 Country 类具有多对一的关系 换句话说 Countr
  • 非静态方法需要一个目标

    private PMS USERS currUser private bool validateUserName dbContext new PmsEntities var validateUser dbContext PMS USERS
  • 静态构造函数中的 Database.SetInitializer() ?

    许多人可能知道为什么我们需要使用下面所示的代码 但是 我想将此逻辑分成几层 并且不想在 Web 层中引用实体框架 DLL 因此我最终将此代码放入我的静态构造函数中DbContext class 这是一个坏主意吗 这样做会对应用程序的性能造成
  • 如何在 .Net Core 3、Visual Studio 2019 和 docker 中使用“dotnet watch run”

    我正在使用 Visual Studio 2019 来使用 docker 和 NET Core 3 我通过将 Dockerfile 添加到我的项目 右键单击项目 gt 添加 gt Docker 支持 来容器化我的应用程序 并且我能够启动它 但
  • .NET 5 EF Core SaveChangesAsync 因错误而挂起

    尽管这个问题有很多结果 但没有一个真正给我明确的答案 每次我尝试通过 AddAsync 和 SaveChangesAsync 方法插入错误数据 例如重复的主键 时 我都会看到以下日志 执行 DbCommand 失败 15 毫秒 我还在 SQ
  • 为什么没有主键的表是一个坏主意?

    我对数据建模非常陌生 根据微软的实体框架 不允许使用没有主键的表 这显然是一个坏主意 我试图找出为什么这是一个坏主意 以及如何修复我的模型 这样我就不会出现这个漏洞 我当前的模型中有 4 个表 User City HelloCity 和 R
  • 在 MVC3 Razor 视图中引用 EntityFramework 4.1 命名空间

    我试图在我的 MVC3 项目中的共享视图内引用 System Data Entity Validation EF 4 1 版本 命名空间 我已经能够使用以下方式引用其他外部库 using Example Namespace 然而 当涉及到作
  • 在运行时更改实体框架数据库架构

    在大多数 ASP NET 应用程序中 您可以通过在运行时修改连接字符串来更改数据库存储 即 我可以通过简单地更改连接字符串中 数据库 字段的值来从使用测试数据库更改为生产数据库 我正在尝试使用实体框架更改架构 但不一定是数据库本身 但没有成
  • EF Core - 可能会导致循环或多个级联路径

    我已经设置了一个我认为非常简单的数据库 但是我收到以下错误 在表 User 上引入 FOREIGN KEY 约束 FK User Suburb SuburbId 可能会导致循环或多个级联路径 指定 ON DELETE NO ACTION 或
  • 实体框架连接字符串定义

    我只是想知道 什么是实体框架连接字符串实际意思 喜欢 metadata res Models Model1 csdl res Models Model1 ssdl res Models Model1 msl provider System
  • 实体框架 5 - 抽象类型“X”没有映射的后代,因此无法映射

    尝试操作时出现以下错误这个对象 https github com gbirchmeier quickfixn blob master QuickFIXn Message FIX44 TradeCaptureReportRequestAck
  • 不同提供商的相同 EDMX 文件

    我正在开发一个项目 其中有一个本地数据库 SQL CE 在不存在与服务器的连接的情况下用作缓冲区 在服务器上我想使用相同的数据库布局 当然 我想使用服务器和客户端上可用的 Common dll 中的相同 EDMX 文件 在客户端中 我有一个
  • ADO.NET 池连接无法重用

    我正在开发一个 ASP NET MVC 应用程序 该应用程序使用 EF 6 x 来处理我的 Azure SDL 数据库 最近 随着负载的增加 应用程序开始进入无法再与 SQL 服务器通信的状态 我可以看到有 100 个到我的数据库的活动连接
  • 如何使用 Linq 将实体表与交叉引用表连接起来

    首先我要说的是 我对 Linq 比较陌生 但我似乎很快就掌握了其中的大部分内容 但这个问题却难倒了我 我找了又找都没有结果 我使用代码优先并创建了 2 个模型 项目 和 关键字 他们之间存在多对多的关系 我的实体模型如下所示 public
  • 如何从实体框架中的 .edmx 文件生成数据库?

    我不得不突然转而使用 Code First Entity Framework 4 1 一开始我对这个框架一无所知 但在过去的 8 个小时里 我现在对阅读博客和文章感到更加自在 特别是这个博客 http blogs msdn com b ad

随机推荐

  • 即使我使用 JDBC 驱动程序 4.0,为什么还需要在 Tomcat Web 应用程序中调用 Class.forName?

    我正在研究Java Web 在学习过程中我了解到从 JDBC 4 版本开始不需要使用该方法Class forName加载驱动程序 我在此确认了此信息link http docs oracle com javase tutorial jdbc
  • 视图控制器加载两次 - 如何解决?

    问题原因 当我向我的 iOS 项目添加一个新的 Swift 类文件时 我决定犹豫不决 将其重命名 删除并创建一个新文件 我想我其实是太犹豫不决了 所以我给它重新命名了几次 问题 现在 viewController 加载了两次 我确实可以看到
  • Hibernate 无法从数据库获取 SequenceInformation

    我最近将应用程序中的 hibernate 更新到 5 4 4 Final 现在 我在部署过程中遇到了以下异常 ERROR org hibernate engine jdbc env internal JdbcEnvironmentImpl
  • LinkBut​​ton 打开新窗口选项卡

  • 动态改变 HTML 标签

    有没有办法动态更新 HTML 标签 我的 HTML 标签是 p hello p 有没有一种方法可以通过 JavaScript 进行更改hello到另一个值 改变该值的最佳方法是什么 document getElementById somet
  • 如何随机调用函数 unity C# [重复]

    这个问题在这里已经有答案了 我正在制作一款无尽的汽车驾驶游戏 每当玩家汽车靠近其中一辆敌方汽车时 我想随机调用其中一个 switchLane 函数 关键是当你靠近时 让其他一些汽车切换到随机车道 我主要寻找的是一种每次接近时随机调用这 4
  • Scala 模式与集合的匹配

    以下不起作用 object Foo def union s Set Int t Set Int Set Int t match case isEmpty gt s case x xs gt union s x xs case gt thro
  • 需要评估布尔逻辑树的指导

    我似乎找不到正确方向的指针 我什至不确定我应该研究的术语是什么 但无数小时的谷歌搜索似乎让我在转圈 所以希望 Stack 的集体智慧蜂巢溢出可以提供帮助 问题是这样的 我需要一种方法来过滤数据 我只能称之为复合逻辑树 目前该系统实现了一个简
  • memory_order_relaxed 有哪些用例

    C 内存模型具有宽松的原子性 它不对内存操作提供任何顺序保证 除了我在这里找到的 C 语言的邮箱示例之外 http www open std org jtc1 sc22 wg14 www docs n1525 htm http www op
  • 不明白这段代码(它无条件运行)

    我正在学习 c 但在我读过的任何书中都没有真正看到这一点 我想阅读和注释代码 以便我可以更好地学习 并遇到了一段奇怪的代码 该代码可以运行但没有条件 根据我读到的内容 以及我使用其他语言的经验 你需要一个 if while for 或块的东
  • 如何获取当前VBA函数返回的工作表和单元格?

    是否有一个变量可以提供将接收自定义 VBA 函数结果的工作表和单元格 例如 如果在A B1公式是 MyCustomFunc 在我的代码中 public function MyCustomFunc what can I call here t
  • VueJs + Vuex + 地图动作

    在文档中 除了通过操作调用的突变之外 状态是不可变的 好吧 我在我的组件中使用 mapGetters mapActions store export default namespaced true state color violet mu
  • MSBuild 构建顺序

    看着这个article http msdn microsoft com en us library ms181718 28VS 80 29 aspx来自 MS 我有一个关于 SolutionToBuild 部分的问题
  • JSONDecodeError:期望值:缩放 SEC EDGAR 时第 1 行第 1 列(字符 0)

    我的代码如下 import requests import urllib from bs4 import BeautifulSoup year url r https www sec gov Archives edgar daily ind
  • 如何强制 MongoDB pullAll 忽略文档顺序

    我有一个 mongoDB 文档 其结构如下 user user name streams user user a name name a user user b name name b user user c name name c 我想使
  • 仅显示一次启动画面

    我有一个无线电 aac 播放器 我在开始时添加了一个启动屏幕 但我只想显示一次 因为如果用户按后退按钮 我的应用程序将停留在后台并播放音乐服务 但是当我返回到应用程序再次显示启动屏幕 这是我实际的闪屏代码 public class Inic
  • 一个文件夹中存储的文件过多是否会导致对其中一个文件的 HTTP 请求变慢?

    我的网站有近一百万张图像 它们存储在我的 Windows 服务器上的一个文件夹中 由于直接在桌面上打开这个文件夹让我和我的 CPU 疯狂 我想知道使用我的 PHP 脚本进行 HTTP 请求获取其中一个是否也很费力 那么 将它们分成不同的文件
  • 在协议缓冲区中使用小数和日期时间的最佳方法是什么?

    我想找出存储未包含在协议缓冲区支持的列表中的某些常见数据类型的最佳方式是什么 日期时间 秒精度 日期时间 毫秒精度 固定精度的小数 精度可变的小数 很多 bool 值 如果你有很多这样的值 那么由于它们的标签 看起来每个值都会有 1 2 个
  • 如何从 JavaScript 中的范围中获取随机字符?

    查看片假名字符 http en wikipedia org wiki 片假名 Unicode http en wikipedia org wiki Katakana Unicode 如何从 Unicode 范围中获取随机字符 我很接近 St
  • 为什么导航属性必须是公共的才能创建代理?

    At http msdn microsoft com en us library dd468057 aspx http msdn microsoft com en us library dd468057 aspx我读到我想要更改跟踪代理的所