首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >转储linqpad中的静态属性

转储linqpad中的静态属性
EN

Stack Overflow用户
提问于 2011-03-29 11:43:56
回答 2查看 526关注 0票数 0
代码语言:javascript
运行
复制
public class Test
{
    public int a = 2;
    public static int b = 5;
    public struct C
    {
        public int d = 9;
        public static int e = 7;
    }
}

new Test().Dump();

上面的代码将转储新创建的对象并将a作为属性列出,但不会列出b或嵌套的静态结构C或其中的任何内容。

如果我有很多自动生成的静态属性,我该如何转储所有内容?

EN

回答 2

Stack Overflow用户

发布于 2019-01-15 08:11:41

反射作品

代码语言:javascript
运行
复制
typeof(Test)
.GetFields(BindingFlags.Static | BindingFlags.Public)
.Select(f => new { name = f.Name, value = f.GetValue(null)})
.Dump();

票数 1
EN

Stack Overflow用户

发布于 2011-03-29 12:44:34

静态实例变量不是您正在创建的"new Test()“实例的一部分。它们是Test类的静态实例的一部分。您可以阅读有关静态类和静态类成员here的内容。

您可以使用以下命令查看静态变量

代码语言:javascript
运行
复制
(Test.b).Dump();
(Test.C.e).Dump();

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5467671

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档