问题标签 [propertyinfo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
7501 浏览

c# - 在派生类型中找不到属性集方法

正如.NET 反射设置私有属性中所厌恶的那样,可以使用私有设置器设置属性。但是当在基类中定义属性时,会抛出 System.ArgumentException:“找不到属性集方法”。

一个例子可以是:

有谁知道解决这种情况的方法?

编辑:给出的示例是对问题的简单说明。在现实世界的场景中,我不知道属性是定义在基类中,还是定义在基类的基类中。

0 投票
1 回答
638 浏览

c# - 当对象实现隐式运算符时,可以测试对 PropertyInfo.PropertyType 的强制转换吗?

我有一个特定类型 ( SpecialImage) 的对象,它实现了对另一种类型 ( ) 的隐式运算符Image

SpecialImage衍生Image。但是,可以通过操作员进行以下操作:

我有一个带有属性的对象,我通过反射和一个Image对象循环遍历:

info.PropertyType在尝试设置值之前是否可以检查对象是否可转换?

0 投票
5 回答
1768 浏览

c# - 将属性传递给 C# 中的方法

我需要传递某些类型的属性选择(每次一种类型),假设这是我的类型:

所以我需要一种方法将这种类型的属性列表传递给其他类型(目标类型),并使用属性名称和属性,我不需要值,类似于以下伪代码:

有什么方法可以传递Product.Id并使用它的名称和属性吗?我不确定,但也许PropertyInfo可以提供帮助,我认为可以传递对象列表,但在这种情况下我不能使用属性和名称,你有什么建议来处理这个问题?或类似的东西?如果我完全错了,我该如何实施呢?

0 投票
6 回答
3040 浏览

c# - 从列表中获取类型 T 的属性名称和不同值有反射

我有一个具有一组属性的类产品:

从一个组件中,我获得了一个List<Product>,并且出于多种原因,我需要使用反射来获取属性,Product然后获取每个属性的Distinct值及其值 。Count()

是否有可能通过反思来实现我的目标?如果没有,还有其他方法吗?谢谢!

更新

问题是我事先不知道我必须使用哪些属性以及类中有哪些属性Product。这就是为什么我认为反思是最好的选择。

我可以通过使用一个Switch - Case结构来实现相同的结果,其中开关比较从类中提取的Property Name并且每个Case对应于一个特定的Property Name。但是这个解决方案的灵活性不足以解决我的问题

0 投票
2 回答
4319 浏览

c# - 如何创建可以处理或强制转换未知类型的 lambda 表达式?

如何为可以处理未知类型的函数创建 lambda 表达式?抱歉,我知道这个问题很模糊,我很难形成它。我只能希望你有一点时间通读我的故事,这应该会让事情变得更清楚。

我的目标是使用预定义的数据协定将字符串值数组反序列化为对象。数据合约的成员有一个职位编号。反序列化器的简单工作是将值映射到数据成员(在进行适当的类型转换之后),并构建对象。

问题是反序列化性能很糟糕!运行 VS Profiler 后,我发现用于填充对象成员的 PropertyInfo.SetValue() 占用的时间最多。我的程序必须在任何给定时间反序列化数千个对象。一个数据合约通常有 100 个成员。因此,我们正在为每 1000 个对象调用 100,000 次 SetValue() 调用,并且它正在拖动。下面是调用 SetValue 的示例:

然后我从 Unknown Recipes 找到了这个页面,它对这个性能问题有一个很有前途的解决方案。看起来我需要使用已编译的 lambda 表达式来替换 SetValue,但我遇到了转换问题。按照上面链接中的示例,我现在可以替换 SetValue()。替换的是动作委托,它们是编译的 lambda 表达式。

首先,我扩展了 PropertyInfo 类。

然后我构建了一个Dictionary<PropertyInfo, Action<object, object>对象,它将每个 propertyInfo 对象与其对应的 Action 委托联系起来。这样我可以“缓存”编译的 lambda 并在一批反序列化中重用它。这就是我现在所说的:

但是,我收到以下异常:

这里 DataContract1 是我要构建的对象的类型。它仅在运行时已知,这与 Unknown Recipes 示例中的场景不同,其中类型在编译时已知。你将如何使这个 lambda 表达式工作?

非常感谢您的宝贵时间!

0 投票
0 回答
174 浏览

c# - 从子类中获取属性值并将其添加到目标对象c#

我有一个静态方法,它有两个参数,一个是包含所有信息的源对象,另一个是我想要将所有值传输到的目标对象。

问题是该类具有嵌套类,我不知道如何将其添加到dest对象中。

我感谢我能得到的所有帮助。

调用该方法如下所示:

0 投票
2 回答
747 浏览

c# - 如何创建静态可绑定属性描述对象

为了确保 WPF 中的绑定以现有属性为目标,我使用了静态属性名称属性。

现在,我不想将有关我的属性的更多信息封装到静态属性描述对象、名称、类型、ID 等中,但不必为名称提供一个可路径绑定的属性,并为所有其他信息提供一个属性。

问题是 WPF 抱怨属性类型错误,而不是 String 而是 PropertyInfo。

我试图以某种方式绕过这个限制。例如,我尝试让我的 PropertyInfo 隐式转换为字符串,覆盖 ToString 并将 PropertyInfo 中的 TypeConverter 添加到字符串和 PropertyInfo 中的字符串。没有任何效果。

而且我也不能直接绑定到 Name 属性。


有什么建议么?

0 投票
2 回答
102 浏览

c# - 在 Object 中查找自定义类型

我有一个具有不同属性的 Upload 类,我喜欢在此类或其他属性中找到每个 UploadObject 属性。如何在我的 Upload 类中找到所有 UploadObjects?

编辑:我正在寻找一个功能,如:

0 投票
1 回答
239 浏览

java - 在android中使用java代码更新数据

如果我必须在 mysql 数据库中插入数据,则意味着我们使用以下代码:

这里使用了addproperty....如何编写代码以更新android中mysql数据库中的数据...请帮助我...

0 投票
4 回答
6449 浏览

java - 如何在android中发出具有多个属性的ksoap2请求?

我必须提出以下soap请求,但我们无法成功,我尝试了几种方法都失败了,我总是得到一个空白字段作为响应。

请求应如下所示:

我现在有这个代码:

如果有人可以帮助我,我提前感谢您!