c#中的简写形式是:如果不为空,则赋值。

23 浏览
0 Comments

c#中的简写形式是:如果不为空,则赋值。

现在有没有能够简化以下代码的C#速记法:

var testVar1 = checkObject();
if (testVar1 != null)
{
      testVar2 = testVar1;
}

在这种情况下,只想在CheckObject()的结果testVar1不为null时将其赋值给testVar2(testVar2具有会触发代码的setter)。试图想到如何使用空合并运算符,但效果不太好。

此外,testVar2的setter上有代码需要触发,因此如果值为null,则不希望将testVar2设置为任何值。

    public MyObj testVar2
    {
        get { return _testVar2; }
        set
        {
            _testVar2 = value;
            RunSomeCode();                
        }
    }

0