实现接口C#

前端之家收集整理的这篇文章主要介绍了实现接口C#前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我不是C#的新手,但我发现一个有点困惑的行为.

我有一个界面

public interface IApplicationPage
{
    Person ThePerson { get; set;  }
    Application Application { get; set; }
}

我在一个页面上实现了界面

public partial class tripapplication2 : System.Web.UI.Page,IApplicationPage
{
    Person IApplicationPage.ThePerson { get; set; }
    Application IApplicationPage.IApplicationPage.Application { get; set; }
}

但是,当我尝试在页面本身引用ThePerson时,我需要跳过环.例如.

1)ThePerson.Birthday

给出一个错误,说“ThePerson”在当前上下文中不存在.“

2)((IMissionTripApplicationPage)this).Person.Birthday

这有效,但看起来很糟糕.

有没有更好的方法来引用实现的属性

解决方法

看起来你在样品中留下了一条线.我相信ThePerson线上的实现应该读
Person IApplicationPage.ThePerson { get; set; }

这种类型的实现被称为显式接口实现.这意味着当通过接口类型的引用来查看对象时,成员将只能看到.

如果您希望通过具体类型引用查看该成员,请将其公开并删除显式实现

public Person ThePerson { get; set; }

猜你在找的C#相关文章