使用if语句填写只读属性?

时间:2015-01-05 08:19:08

标签: c# if-statement properties

我对学校的练习测试提出了疑问。

我需要填写已经半版本的应用程序(Windows窗体应用程序)

在这行代码中说明如下:

    public bool DangerousLoad 
    { 
        get 
        {
            // ==> Place here the code that has been asked from assignment 1D:

        }
    } 

他们要我做的是:

作业1D(8分): DangerousLoad酒店尚未完成。如果船舶包含危险载荷,则DangerousLoad属性必须为true。如果负载等于LPG(某种汽油)或油,则负载是危险的。填写酒店..

所以我的问题是如何做到这一点?因为我尝试了以下内容:

    public bool DangerousLoad 
    { 
        get 
        {
            bool lpg;
            bool oil;
            // ==> Place here the code that has been asked from assignment 1D:
            if (DangerousLoad == lpg)
            {
                DangerousLoad = true;
            }
        }
    } 

我不明白的是这个......我需要将代码放在注释的正下方,但是当我这样做时,它会给我一个关于它是“只读”属性这一事实的错误。 。

所以你们..我怎么能解决这个问题,如果危险负载包含LPG或OIL属性变为真?

提前致谢

1 个答案:

答案 0 :(得分:2)

 DangerousLoad = true;

这意味着您正在尝试自行设置。这是你不能做的,因为它是onkly阅读。您需要从" get"

返回一个值
public bool DangerousLoad 
{ 
    get 
    {
        return isLpg || oil;
    }
} 

类似的东西。