问题标签 [dynamicobject]
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.
c# - 在 C# ( WCF ) 中创建的可序列化动态对象在 VB.NET 中无法访问
在我的解决方案中,我使用 C# 编写了 Web 服务(后端),并通过 WCF 提供给客户端,该客户端是带有 VB.NET 的 MVC3 Web 前端。对于一个 Web 服务,我需要向客户端发送一个动态对象列表 List<SerializableDynamicObject>
。
我实现了此处描述的解决方案:DLR 的 WCF Serializaiont,示例代码。在我用 C# 编写的测试控制台应用程序中,我可以轻松读取 WCF 提供的动态属性。不幸的是,在 VB.NET 控制台应用程序中,当我尝试调用其中一个属性时,我收到第一个属性的错误消息“未找到类型‘SerializableDynamicObject’的公共成员‘TRIP_ID’”。有趣的是,我可以在 C# 和 VB.NET 中的服务对象的“Watch”和“Locals”窗口动态属性中看到。
谁能向我解释问题是什么以及如何解决?谢谢...
网络服务代码:
C#版本读取WCF动态对象(作品),动态属性可见并可调用:
读取 WCF 动态对象的 VB.NET 版本(不工作)
c# - 无法为 ExpandoObject 赋值
只是尝试动态对象,我遇到了这个编译错误
System.Dynamic.ExpandoObject'不包含'GivenName'的定义,并且找不到接受'System.Dynamic.ExpandoObject'类型的第一个参数的扩展方法'GivenName'
查看MSDN: ExpandoObject,他们实际上做了不同的事情 - 使用dynamic
关键字
对此有何解释?myObj
是否仍然可以在不使用dynamic
关键字的情况下为实例赋值?我看了看有.SetProperty
没有。
谢谢
更新
现在我明白我必须使用dynamic
关键字,但是如果允许,这条线有什么用
c# - 从动态对象 C# 中读取值
我正在尝试从 System.Web.Helpers.DynamicJsonObject 读取值。我可以在调试器中看到这些值,但我不知道如何访问它们。我试过这个
item.GetType().GetProperty("batch_id").GetValue(item, null);
但是当我尝试在调试器中得到这个响应时“item.GetType().GetProperty("batch_id")' is null”
我从我的解决方案中附上了一张图片
谢谢你,-Tesh
c# - 使用动态对象从方法返回不同的类型
如果您需要测试来自另一个项目的非公共属性,Microsoft 单元测试向导会创建 Accessor 对象。在我的单元测试中,我创建了辅助函数,这样我就不会在每个单元测试方法中重复相同的代码。目前我有两个几乎相同的测试,除了一个采用标准公共对象,另一个采用 Accessor 版本。由于访问器基于标准版本,我应该能够拥有一个功能。
我曾假设我可以使用泛型来完成一个简单的演员表。但在发布问题后,我发现需要做更多的工作,包括必须更新底层对象。当我询问是否存在任何其他方法时,这一点得到了证实。有人建议Dynamic 对象可能会起作用。我不熟悉动态对象,有人可以发布一个示例,让我拥有一个共享功能并在运行时确定对象吗?
以下是现有的两个功能:
我有两打这样的单元测试,真实对象平均有 10 个属性,我在这里简化了示例。
这是单元测试 API 创建的访问器代码(再次,我已将其缩减以简化示例):
c# - 在动态方法调用中获取参数名称和值
我正在实施一个DynamicObject
. 在 中TryInvokeMethod
,除了参数(传递给方法)之外,我还需要参数的名称(如果已使用)。
我可以看到binder.CallInfo.ArgumentNames
确实提供了名称,但我无法将它们与值相关联。有没有办法这样做,或者我希望反对希望:
因此,例如,如果我拨打以下电话:
我有test
and test2
,and also something
,但我无法获得something
作为名称test2
且test
没有名称的信息。
c# - 从 Expando /dynamic 对象中动态删除成员
我正在寻找一种从动态对象中动态删除成员的方法(也许我们可以在这里使用 Expando 对象吗?)。
好的,我想需要澄清一下...
当你这样做时:
, Bar
'jar' 属性将在运行时动态添加。我正在向用户显示这个,他可以进一步添加他自己的属性(表单可用选项),这可以通过将成员添加到动态对象来完成。
但他也可以从 Foo 对象中删除成员(比如“Jar”),我们如何从动态对象中删除成员?我们可以在这里使用 Expando 对象吗?
c# - 将类型 'System.Dynamic.DynamicObject 转换为 System.Collections.IEnumerable
我成功地使用 MVC3 中的 JavaScriptSerializer 将 json 字符串反序列化为动态对象。我不知道如何将它转换为我可以枚举的东西。下面的 foreach 代码行是我的最新尝试,但它错误:“无法将类型'System.Dynamic.DynamicObject'隐式转换为'System.Collections.IEnumerable'。如何转换或转换以便可以遍历字典?
c++ - 在 C++ 中创建多个动态分配的对象
比我聪明得多的人的另一个问题:
我正在尝试创建 3 个 Player 类的实例,如下所示:
你可以在下面看到他们的构造函数。这真的很简单:
(假设名称和命中率定义正确)
现在我的问题是,当我尝试检查每个玩家的名字时,似乎他们都成为了 player3 的别名
好吧,所以我真的很想知道解决这个问题的最佳解决方案,但更重要的是我只想了解它为什么会这样。这似乎是一件很简单的事情(像我一样被java宠坏了)。
另外需要注意的是:这是针对学校作业的,我被告知我必须使用动态分配的对象。
非常感谢,如果有什么需要澄清的,请告诉我。
编辑:根据需要,这里是完整的文件:
播放器测试.cpp
播放器.h
c# - 对动态匿名对象中的对象进行计数 (C#)
我有一个动态对象(它实际上是 json),我将它传递给我的 MVC WebApi 控制器。
json 对象在一个匿名对象中包含多个列表,这些列表通过client.PostAsJsonAsync("myapiurl", objectGraph)
.
为了在 MVC 端验证对象,我需要做的是获取每个列表中对象的计数。我可以通过动态访问列表mydynamicobject.mylist
和通过单个项目,mydynamicobject.mylist[index]
但我似乎无法获得mydynamicobject.mylist
.
到目前为止我已经尝试过:
- LINQ 扩展方法 - 不适用于动态
Enumerable.Count(mydynamicobject.mylist)
- 无法推断类型
还有其他想法吗?计数实际上在动态对象中正确可用,base
但显然不能作为属性访问。帮助!
这现在有效:
发送动态对象的代码(不同的应用程序):
list - 自定义对象列表无法在运行时添加对象给出“Nullpointer Exception”
在创建一个自定义类型 objectlist 列表并在该列表中添加一些对象时,我遇到了一些问题。我有一个advertise
对象列表
从以下行开始,我的代码在插入第一个对象后出现运行时错误:
所以如果有人可以指导我......
堆栈跟踪:-