【问题标题】:How do i initialise a property on a class in C# 6 [duplicate]如何在 C# 6 中初始化类的属性 [重复]
【发布时间】:2016-03-05 11:49:42
【问题描述】:

我有一个使用某些服务的类。我需要在创建类时实例化每个服务。在 C# 6 中,我可以看到两种方法,但我不确定哪种方法是正确的......

protected static SomeServiceType Service => new SomeServiceType();

或者我可以使用自动属性初始化器...

protected static SomeServiceType Service { get;} = new SomeServiceType();

每种方法的优点/缺点是什么? 非常感谢

【问题讨论】:

标签: c# properties initialization c#-6.0


【解决方案1】:

我相信

  • 前者(“表达式主体成员”)调用new SomeServiceType() 每次读取属性时
  • 后者(“Auto-property initializers”)在实例化时调用它一次,并在每次读取属性时返回创建的实例。

听起来你想要后者。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-06
    • 1970-01-01
    相关资源
    最近更新 更多