簡體   English   中英

可訪問性不一致:屬性類型錯誤

[英]Inconsistent Accessibility: Property Type Error

我已經完成了谷歌搜索,但沒有成功。 這是導致我的代碼無法編譯和運行的唯一錯誤,但我似乎無法弄清楚。 錯誤的確切文本是“ ...字典比屬性FleetAirliner.InsuranceProperties的訪問權限少”

任何想法可能是什么原因造成的?

namespace TheAirline.Model.AirlinerModel
{
[Serializable]
public class FleetAirliner
{
    public Airliner Airliner { get; set; }
    public string Name { get; set; }
    public Airport Homebase { get; set; }
    public enum PurchasedType { Bought, Leased,BoughtDownPayment }
    public DateTime PurchasedDate { get; set; }
    public PurchasedType Purchased { get; set; }
    public Boolean HasRoute { get { return this.Routes.Count > 0; } set { ;} }
    public AirlinerStatistics Statistics { get; set; }

    /*Changed for deleting routeairliner*/
    public enum AirlinerStatus { Stopped, On_route, On_service, Resting, To_homebase, To_route_start }
    public AirlinerStatus Status { get; set; }
    public Coordinates CurrentPosition { get; set; }
    public List<Route> Routes { get; private set; }
    public Flight CurrentFlight { get; set; }
    public DateTime GroundedToDate { get; set; }
    public List<Pilot> Pilots { get; set; }
    public Dictionary<string, AirlinerInsurance> InsurancePolicies { get; set; } //error occurs here
    public int NumberOfPilots {get {return this.Pilots.Count;} private set {;}}
    public FleetAirliner(PurchasedType purchased,DateTime purchasedDate, Airline airline,Airliner airliner,Airport homebase)
    {
        this.Airliner = airliner;
        this.Purchased = purchased;
        this.PurchasedDate = purchasedDate;
        this.Airliner.Airline = airline;
        this.Homebase = homebase;
        this.Name = airliner.TailNumber;
        this.Statistics = new AirlinerStatistics(this);

        this.Status = AirlinerStatus.Stopped;

        this.CurrentPosition = new Coordinates(this.Homebase.Profile.Coordinates.Latitude, this.Homebase.Profile.Coordinates.Longitude);

        this.Routes = new List<Route>();
        this.Pilots = new List<Pilot>();
        this.InsurancePolicies = new Dictionary<string, AirlinerInsurance>();
    }

這意味着“ AirlinerInsurance”類別不是公開的。

它是一個公共屬性,但是允許使用該屬性的其他類可能沒有對該類本身的訪問權限(它是私有的/內部的)。

編輯現在,您已經發布了“ AirlinerInsurance”類的代碼,只需向其添加“ public”修飾符即可。

您可以在這里這里閱讀更多信息

你需要

class AirlinerInsurance {
  // stuff
}

成為

public class AirlinerInsurance {
  //stuff
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM