问题标签 [expando]
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# - 如何使用 ExpandoObjects 替换列出的增量组合类?
我不认为在这个意义上可以使用设计模式。案例场景是有一个基础对象,该对象具有这些属性和始终定义的相应 getter/setter:(id、name、content)。除此之外,还有一些具有可选属性和相应的 getter/setter(评论、作者、已删除)的对象。我希望这些对象为 API 提供我所需要的确切属性/方法。
一种方法是将所有内容放在一个状态膨胀的类中
另一种是有多个类,但这会导致类名膨胀
由于始终具有(id、name、content)和三个可选变量的类的所有可能配置都是 2^3,我想知道是否有办法使用设计模式(希望没有反射)来做到这一点。请记住,我知道我可以使用更轻松的类型语言或仅使用 JSON/XML,但这不是重点:P。此外,如果这完全相关,我也不熟悉部分类(来自 C#)。
正如它指向我的那样,ExpandoObjects 可能就是这样。您能否提供一些示例代码来表示ArticleWithComments
,DeletedArticleWithAuthorAndComments
例如,这样就不需要将这些定义为单独的类?
谢谢
java - Liferay 主题和 portlet 通信
我有一个嵌入主题的 portlet。我发现允许主题从 portlet 获取参数值的唯一解决方案是使用中间数据库。我所做的是我在 portlet 中创建了一个表,然后我尝试从主题访问这个表:
Portlet 中的 Java 代码:
主题中的速度代码:
但我得到的结果是:
表 ClientTab 不存在
我使用这些参考来开发我的代码:
http://myjavaexp.blogspot.com/2013/01/liferay-expando-services.html
http://www.liferay.com/fr/web/raymond.auge/blog/-/blogs/715049
liferay - 如何在 life ray 现有用户表中添加自定义字段?
我要求网站所有者有权创建用户并能够查看仅由他创建的用户列表。
为了达到同样的效果,我创建了一个带有基本用户详细信息的表单的 portlet。在我的操作类中提交表单时,我通过调用以下方法在 USER_ 表中插入用户详细信息:
现在用户正在 USER_ 表中创建。但是在显示用户列表时,我只需要显示由该站点所有者创建的用户。
所以我想siteId
在用户表中再插入一列,并在基于siteId
我想优化列表并在 UI 上显示的基础上进行提取。
因此,我已经了解了 Expando 的概念,但我没有正确了解如何根据我的要求使用它。
因此,请任何人建议我如何在调用addUser
方法时插入“siteId”,同时根据此siteID
需要获取用户列表。
提前致谢。
liferay - liferay:如何从 BD 中的“expandovalue”表中获取数据?
在我的liferay 中,我有一个供用户填写的Web 表单portlet。填写表格后,数据将存储在数据库中的表expandovalue中
现在我正在尝试检索该数据并将其显示在一个 portlet 中,我找到了很多关于 expando 的文档,但大多数文档都是针对旧版本的 liferay 的,我不确定这就是我正在寻找的。因为expando似乎适用于自定义字段和我的场景数据存储在默认数据库表中
如何获取存储在数据库表“expandovalue”中的数据并将其显示在 portlet 中?
liferay - Liferay - 暂存时自定义属性为空
我在 Liferay 暂存模式中获取自定义属性(站点)的值时遇到问题。
我正在尝试在我的主题中使用以下代码获取值:
但是staging 的输出是空的:
现场输出:
我正在使用 Liferay 6.2+
你有什么想法?谢谢你!
c# - 将 LINQ 异常类型结果(如属性包集合)传递给 ASP.NET 5 MVC 视图
我四处搜索,人们谈论将 ExpandDo 与动态一起使用,但我无法弄清楚如何使用从 LINQ 查询返回的集合来执行此操作。
我正在两个表(学生和注册)之间对我的数据库进行内部连接
我试过了
我有
在我的 View.cshtml 的顶部
但是当我尝试导航到 Web 应用程序中的控制器时,会出现此错误:
传入字典的模型项的类型为“System.Dynamic.ExpandoObject”,但此字典需要“System.Collections.Generic.IEnumerable`1[System.Object]”类型的模型项。''
我也试过:
但在我看来(.cshtml 文件)我
它会在@Html.Raw 行与
App_Web_index.cshtml.1bbec3a6.jtomobws.dll 中出现“Microsoft.CSharp.RuntimeBinder.RuntimeBinderException”类型的异常,但未在用户代码中处理
理想情况下,我想把它做成一个班轮。在我看来,我希望能够遍历一组属性包,并提取学生和课程字段。所以我的属性包将包含属性 Student 和 Course,它们是它们的集合。我看过很多类似的帖子,但没有人这样做
谢谢托马斯
c# - 如何显示在 .aspx 网站中以编程方式生成的表格
我在显示以编程方式生成的表格时遇到问题。让我解释。我有一个看起来像这样的 XML:
这种方法:
正在将节点放入 Expando-Object。有了这个对象,我想以编程方式在 .aspx 网站中生成一个表。为了生成我调用这个方法:
到目前为止一切都很好。行和单元格都以正确的值添加到表中,没有异常或其他任何内容,但该表未显示在网站中。我真的不知道为什么没有任何显示,所以我希望你能帮助我。
c# - Expando 对象访问不存在的属性
我正在处理 C# 中的 expando 对象,但是,我想知道当我们访问不存在的属性时,我们是否有办法分配一个预定义的值,例如“找不到道具”?我的代码如下,如果我们访问字典中的未知属性(转换为 expandoObject),我有 Runtimebinderexception。
那么有什么方法可以避免异常并显示上面的值(Prop not found)?谢谢
c# - 无效的存储类型:DBNull
当使用 expando 对象填充我的数据表时,我在初始化一个新的datarow
. 例外是:
无效的存储类型:DBNull