system.reflection相关内容

使用 EF Core 在通用存储库中包含使用反射的所有导航属性

我正在为 EF Core 项目创建通用存储库,以避免必须为所有模型编写 CRUD.我遇到的一个主要障碍是未加载导航属性,因为 Core 尚不支持延迟加载,并且泛型类显然无法定义 .Include 类特定属性的语句. 我正在尝试为我的 Get 方法执行类似的操作以动态包含所有属性: public virtual T Get(Guid itemId, bool early = false){I ..
发布时间:2022-01-04 23:54:49 C#/.NET

如何使用反射调用自定义运算符

在我的小项目中,我使用 System.Reflection 类来生成可执行代码.我需要调用自定义类型的 + 运算符.有人知道如何使用 C# 反射调用自定义类的自定义运算符吗? 解决方案 C# 编译器将重载运算符转换为名称为 op_XXXX 的函数,其中 XXXX 是操作.例如,operator + 被编译为 op_Addition. 以下是可重载运算符及其各自方法名称的完整列表: ..

创建名称在字符串变量中的类的对象实例

我不知道我要问的东西是否可用,但我只想知道它是否存在以及它是如何工作的.所以这是我的问题: 我有 2-3 个自己的自定义模型类.例如,客户,员工和产品.现在我在一个字符串中有类名.并基于类名出现在一个字符串中,我必须创建它的对象和返回视图.我怎么能做到这一点? 我知道 IF ELSE 语句的一个选项,但我想尝试一种更好的“动态"方式... 解决方案 将类名放在字符串中并不足以创 ..
发布时间:2021-12-26 14:20:24 C#/.NET

LoadFile 和 LoadFrom 与 .NET 程序集的区别?

我正在查看 msdn 文档,但我仍然对加载程序集时使用 LoadFile 和 LoadFrom 之间究竟有什么区别感到有些困惑.有人可以提供一个例子或类比来更好地描述它.MSDN 文档让我更加困惑.此外,ReflectionOnlyLoadFrom 是否与 LoadFrom 相同,只是它仅在反射模式下加载程序集. 由于我的 .NET 经验不是最好的,这里有一些关于使用 LoadFile 的 ..
发布时间:2021-11-29 09:38:28 C#/.NET

.NET Core/.NET Standard 中 PropertyInfo.ReflectedType 的等价物是什么?

我需要类似于 PropertyInfo.ReflectedType 在完整框架中所做的事情. 目前我无法弄清楚什么可以替代 PropertyInfo 的整个属性. 解决方案 ReflectedType 在 .NET Core 中不受支持,正如微软的人所说,它被“有意排除".这个 github 上的问题 包含一个博客链接,该链接解释了原因,但现在已损坏... 您可以查看像 Nun ..
发布时间:2021-11-26 13:17:44 C#/.NET

在 PCL 中获取程序集版本

我在 .NET 4.5 中有以下代码行,我试图将其构建为可移植类库.其目的是获取程序集版本: this.GetType().Assembly.GetName().Version.Major; 问题是 Assembly.GetName() 在 PCL 中不可用.有没有办法在 PCL 中获取汇编版本? 我知道可以解析 Assembly.FullName,但我想要一个更好的解决方案. 解 ..

在运行时动态更改对 dll 的引用

我的情况是,我在不同的文件夹中有多个 .dll 文件,它们都具有相同的名称,包含相同的函数(名称相同),但同名函数内部的代码不同. > 我在设计中创建了我的应用程序,引用了这些 .dll 文件之一.但我希望在我的应用程序启动时,使用选择案例能够更改对这些 dll 之一的引用. 这可能吗? 谢谢! 解决方案 你不能那样做,如果你想使用你在运行时选择的 dll,你需要从不在你的 ..
发布时间:2021-11-26 11:58:15 C#/.NET

.NET Core/.NET Standard 中 PropertyInfo.ReflectedType 的等价物是什么?

我需要类似于 PropertyInfo.ReflectedType 在完整框架中所做的事情. 目前我无法弄清楚什么可以替代 PropertyInfo 的整个属性. 解决方案 ReflectedType 在 .NET Core 中不受支持,正如微软的人所说,它被“有意排除".这个 github 上的问题 包含一个博客链接,该链接解释了原因,但现在已损坏... 您可以查看像 Nun ..
发布时间:2021-11-24 21:07:29 C#/.NET

.NET Core/.NET Standard 中 PropertyInfo.ReflectedType 的等价物是什么?

我需要类似于 PropertyInfo.ReflectedType 在完整框架中所做的事情. 目前我无法弄清楚什么可以替代 PropertyInfo 的整个属性. 解决方案 ReflectedType 在 .NET Core 中不受支持,正如微软的人所说,它被“有意排除".这个 github 上的问题 包含一个博客链接,该链接解释了原因,但现在已损坏... 您可以查看像 Nun ..
发布时间:2021-11-24 19:24:25 C#/.NET

C# 加载程序集,带有通用引用

我遇到了一个小问题 - 我正在编写一个加载 DLL 的程序,每个 DLL 都包含一个类,该类继承自已加载的 DLL 和“主机"程序引用的库中存在的类正在加载 DLL.这里的问题是,当我尝试加载并转换到超类时: var assembly = Assembly.LoadFrom(dllPath);var type = assembly.GetTypes().FirstOrDefault(x => x ..
发布时间:2021-11-24 12:04:17 C#/.NET

在 PCL 中获取程序集版本

我在 .NET 4.5 中有以下代码行,我试图将其构建为可移植类库.其目的是获取程序集版本: this.GetType().Assembly.GetName().Version.Major; 问题是 Assembly.GetName() 在 PCL 中不可用.有没有办法在 PCL 中获取汇编版本? 我知道可以解析 Assembly.FullName,但我想要一个更好的解决方案. 解 ..
发布时间:2021-11-24 11:24:23 C#

在运行时动态更改对 dll 的引用

我的情况是,我在不同的文件夹中有多个 .dll 文件,它们都具有相同的名称,包含相同的函数(名称相同),但同名函数内部的代码不同. > 我在设计中创建了我的应用程序,引用了这些 .dll 文件之一.但我希望在我的应用程序启动时,使用选择案例能够更改对这些 dll 之一的引用. 这可能吗? 谢谢! 解决方案 你不能那样做,如果你想使用你在运行时选择的 dll,你需要从不在你的 ..
发布时间:2021-11-24 11:14:00 C#/.NET

无法遍历泛型类型 B 的列表 A(icollection),其中 A 和 B 都实现相同的接口

介绍有点乏味,但只是为了清楚起见!有些人甚至可能从中学到一些东西或获得一些方便的见解.我的问题在底部.我真的希望有人能帮助我! 我有这个界面 公共接口 IEFEntity{对象 GetPKValue();布尔 PKHasNoValue();} 我所有的自动生成的 EF 类都实现了这个接口并实现了 2 个方法.这是通过使用部分类的单独文件完成的,因此在重新生成 EF 类时实现不会消失.这对 ..
发布时间:2021-11-24 10:42:05 C#

使用反射的实体框架排序

我有一个用于排序的扩展方法,sortExpression 可以是“Description"或“Description DESC"之类的东西,它非常适合同一个表中的列: public static IQueryable;OrderBy(这个 IQueryable 源,字符串 sortExpression){如果(源==空)throw new ArgumentNullException("sour ..
发布时间:2021-09-04 18:41:01 其他开发

递归获取类的所有属性 C#

我有一个看起来像 的课程 公共类员工{公共字符串名字{获取;放;};公共字符串姓氏 { 获取;放;};公共地址地址{获取;放;};}公开课地址{公共字符串 HouseNo { get;放;};公共字符串 StreetNo { get;放;};public SomeClass someclass { get;放;};}公共类 SomeClass{公共字符串 A{ 得到;放;};公共字符串 B{ ..
发布时间:2021-09-04 18:40:58 C#/.NET