【问题标题】:Access protected const from base class in attribute从属性中的基类访问受保护的常量
【发布时间】:2017-10-29 03:34:32
【问题描述】:

我有一个带有常量的基类

public class TestClassBase
{
    protected const string Foo = "Bar";
}

我可以在 C# 中使用如下

[Trait(Foo, "")]
public class MyCSharpTestClass : TestClassBase
{
}

如何在 F# 类中使用它?编译器无法识别Foo

[<Trait(Foo, "")>]
type MyFSharpTestClass() =
  inherit TestClassBase()

我得到的错误是:FS0267 这不是一个有效的常量表达式或自定义属性值。

编辑

[&lt;Trait(Foo, "")&gt;] 产生:FS0039 值或构造函数 'Foo' 未定义。也许您想要以下之一:地板。

[&lt;Trait(this.Foo, "")&gt;] 产生 FS0039 值、命名空间、类型或模块“this”未定义。也许您想要以下之一:ThisAssembly。

[&lt;Trait(base.Foo, "")&gt;] 产生 FS0039 值、命名空间、类型或模块“基”未定义。也许你想要以下之一:基地。

[&lt;Trait(TestClassBase.Foo, "")&gt;] 产生 FS0039 字段、构造函数或成员 'Foo' 未定义。

【问题讨论】:

标签: c# f# xunit


【解决方案1】:

此问题被归类为 Github site 上的错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-08
    • 1970-01-01
    • 2016-10-01
    • 2016-08-13
    • 2014-08-27
    • 2017-01-12
    • 2016-03-11
    相关资源
    最近更新 更多