问题标签 [expandoobject]

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 投票
1 回答
1320 浏览

c# - 确定 ExpandoObject 中的对象类型

我已经派生了一个类,该类将采用 XML 文件并动态生成 ExpandoObject,以利用 ExpandoObjects 列表和递归传递的 XML。

将其传回以进行处理以检索数据是可行的,但是我从遗留系统中检索的 XML 是不一致的。我可以这样取回单个节点

或者

因此,对于关键的“被保险人”,我要么得到ExpandoObject要么List<ExpandoObject>。我正在尝试确定最简单的解决方案来确定返回的类型。

理想情况下,只是x.insured.OfType<List<ExpandoObject>>()返回一个布尔值或类似性质的东西。

干杯

0 投票
3 回答
31937 浏览

c# - 将 ExpandoObject 转换为匿名类型

我可以将 ExpandoObject 转换为匿名类型吗?

稍后添加

// 这是我的实体

//------------------------------------------------ -------------------------------------

//------------------------------------------------ --------------------------------------

不要考虑这个中间部分..它的目的是另一个......

我的问题出在 LookupExecutable 类中的 Execute() 方法中。我不知道如何创建 TSelection 类型的新实例并为其赋值。此 TSelection 类型始终是匿名类型。

0 投票
1 回答
1414 浏览

c# - 带有 Spring 表达式的 ExpandoObject

我使用 ExpandoObject 类创建对象,我想对该对象执行 spring.net 表达式,但随后出现以下错误:

无法为指定的上下文 [System.Dynamic.ExpandoObject] 解析“名称”节点。

代码如下:

我认为 spring 表达式不适用于动态对象,但也许你现在为什么会发生这种情况以及任何解决方法(我尝试在 IDictionary 列表上转换 ExpandoObject,然后执行 spring 表达式,但这不起作用)?

0 投票
1 回答
1722 浏览

wpf - 使用 WPF WebBrowser 将字典传递给 ObjectForScripting

WebBrowser在 WPF 中使用一个组件来托管一些 JavaScript + HTML,并且我希望能够将可自定义的对象作为ObjectForScripting属性传递。我的最终目标是运行在 javascript 中的WebBrowser可以调用类似:

我可以通过实现一个ComVisible设置为它的类来实现接近此的目标,该类true具有一个lookup属性:

但是,我希望对ObjectForScripting传入的成员保持灵活,因此我无法事先指定每个属性是什么。

理想情况下,我只想指定一个名称-对象对来传递,但这不起作用。

到目前为止我已经尝试过(但失败了):

  • 使用 aDictionary<string,object>作为我的上下文
  • 使用的扩展Dictionary<string,object>被标记为ComVisible
  • 使用ExpandoObject
  • 用一个List<KeyValuePair<string,object>>
  • 使用的扩展 List<KeyValuePair<string,object>>被标记为ComVisible

有什么方法可以将可自定义的内容传递到我缺少ObjectForScripting的 WPF中吗?WebBrowser

0 投票
3 回答
2579 浏览

c# - “System.Dynamic.ExpandoObject”不包含名为“Name”的属性

这是我所拥有的:

但我收到错误“System.Dynamic.ExpandoObject”不包含名为“Name”的属性。

listAddresses 由 10 个项目组成。当我调试时,当我观看它们中的每一个时,我会转到动态视图并且有名称和 ID。这个怎么恢复?

0 投票
1 回答
850 浏览

silverlight - 在 Silverlight 中绑定 ExpandoObject

在 WPF 中,您可以绑定 ExpandoObject 和其他动态类型:

这在 Silverlight 5 中不起作用。有没有办法让它起作用,或者有人有这个问题的链接吗?

0 投票
1 回答
1978 浏览

c# - Mono for Android 是否支持“动态”关键字和 ExpandoObject?

我想将动态 ExpandoObjects 用于我正在处理的项目,但它没有按照我认为正确的配置进行编译。

从我所见,Mono 支持动态关键字和 ExpandoObject,所以我假设它要么是配置问题,要么在 Android 的 Mono 中是不可能的。

但是,当我尝试使用它时,我在 Visual Studio 2010 中收到以下错误消息:

错误 3 找不到编译动态表达式所需的一种或多种类型。您是否缺少对 Microsoft.CSharp.dll 和 System.Core.dll 的引用?D:\HMI\ExpandoTest\ExpandoTest\Activity1.cs 34 17 ExpandoTest

错误 1 ​​未定义或导入预定义类型“Microsoft.CSharp.RuntimeBinder.Binder” ExpandoTest

下面是简单的测试代码:

0 投票
3 回答
432 浏览

c# - C# - ExpandoObject 定义

查看 System.Dynamic.ExpandoObject 的定义我遇到了这个:

为什么 ExpandoObject 类不实现接口?

0 投票
1 回答
462 浏览

asp.net - 从 ascx 在 aspx 页面中动态添加静态方法

我正在搜索谷歌,有没有办法在运行时在我的页面中添加任何方法。我从stackoverflow 获得了一个链接……这是expando 对象。

我不熟悉expando对象。这是我得到和喜欢的一小段代码

根据我的情况,我需要在下面添加一个例程,就像在许多 aspx 页面中一样。

所以我需要知道是否有任何方法可以在我的 ascx 页面中添加一些技术,这将在托管该特定 ascx 的所有 aspx 页面中添加上述方法。请帮助我实现它。谢谢

0 投票
3 回答
819 浏览

c# - 如何在运行时在 expando 上添加对象属性?

我在这里阅读了一些关于 expando 对象的文章,但我想实现不同的目标。
我想在运行时添加具有动态属性的属性对象,为其赋值,然后稍后检索:

用法:

但我收到此错误:

我想我滥用了这个属性,这可能实现吗?如果是,如何?请帮忙。

编辑

这是完整的课程:

我想要实现的是:
我将有随机变量,例如,“ photo_01, photo_12, photo_15, name_01, name_02, age_01, age_02
如果可能的话,我想以这种方式使用该方法:

然后检索值: