VB.net으로 작성된 기본 클래스를 사용하여 C# 프로젝트에서 사용하고 있습니다. 이 기본 클래스에는 프로젝트에서 값을 부여해야하는 몇 가지 속성이 있습니다. 이러한 속성 중 하나에 액세스하는 데 문제가 있습니다. 다음과 같이protected enum에 대한 액세스
Public MustInherit Class FTPUploaderBase
{
Private _protocol As FTPProtocol
Protected Property Protocol() As FTPProtocol
Get
Return _protocol
End Get
Set(ByVal Value As FTPProtocol)
_protocol = Value
End Set
End Property
Protected Enum FTPProtocol
FTP = 1 'Standard FTP (port 21)
SFTP = 2 'Secure FTP over SSH (port 22)
FTPS = 3 'Secure FTP over Implicit SSL (port 990)
FTPES = 4 'Secure FTP over Explicit SSL (port 21 - to forward to 443)
End Enum
}
이 그 기본 클래스에서 DRIVED 내 C# 클래스는 다음과 같습니다 : 일관성 접근성 :
public class FTPUploadeClass:FTPUploader.FTPUploaderBase
{
public FTPProtocol Protocol
{
get
{
return base.Protocol;
}
set
{
base.Protocol = value;
}
}
}
이 프로토콜에이 오류를 보여줍니다 재산권
이 기본 클래스에 'FTPUPloaded.FTPUplodedBase.FTPProtocol'속성보다 '기본 기본 클래스 이름'입니다.
솔루션 : C# 클래스에서 Property의 이름을 변경했는데 작동합니다.
왜 클래스 안에 중첩 열거로 시작하는 것입니다? 일반적으로 열거 형이해야 (즉, 오직 하나의 클래스 안에서만 사용됩니다.) – Servy