gpt4 book ai didi

C#:静态 Guid 作为属性的参数

转载 作者:太空狗 更新时间:2023-10-30 00:28:59 24 4
gpt4 key购买 nike

如何使用静态 Guid 作为属性中的参数?

static class X
{
public static readonly Guid XyId = new Guid("---");
}

[MyAttribute(X.XyId)] // does not work
public class myClass
{
}

它不起作用,因为 Guid 必须是只读的,它不能是常量。 string 和 byte[] 表示也将是只读的。

有解决办法吗?

最佳答案

不可能也永远不可能,因为[Attributes]被编译为元数据而static变量在运行时被初始化,当然前者无法访问后者(通过反射除外)。

如果标准

public const string MyGuid = "blah";

不会为你工作,然后 AFAIK 实现你想要的唯一方法就是反射。

关于C#:静态 Guid 作为属性的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1443579/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com