尝试继承三个基类,无法实现
尝试继承三个基类,无法实现
我对我的User
类的设计有一些问题,但是它们足够不同,我认为它们应该是独立的问题。
所以,第一个问题与基类的继承有关。我当前继承了两个类,ProfileBase
和ISessionMgrEntry
,如下所示:
public class User : ProfileBase, ISessionMgrEntry
但是,我还想继承第三个类,MembershipUser
,像这样:
public class User : ProfileBase, MembershipUser, ISessionMgrEntry
然而,编译器不允许我这样做。为什么?我该如何解决这个问题?
谢谢。
PS - ASP.NET 3.5 / C#
编辑
嗨。我认为下面的解决方案可能适用于我想实现的目标。它看起来非常简单和直接。我这样做是为了创建一个完整/组合的User
对象。有人看到可能会导致问题的原因吗?在我进行这个操作时,有一个问题是重叠的属性。例如,MembershipUser
和ProfileBase
都有"UserName
"。我应该选择其中一个还是这会是一个设计缺陷?有什么建议吗?再次感谢。
public class User { #region Constructors private readonly MembershipUser _MembershipUser; private readonly ProfileBase _ProfileBase; #endregion public User() { _MembershipUser = new MembershipUser(); _ProfileBase = new ProfileBase(); } public string Comment { get { return _MembershipUser.Comment as string; } set { _MembershipUser.Comment = value; } } public bool IsAnonymous { get { return _ProfileBase.IsAnonymous as bool; } } .... }