2012-06-21 2 views
-1

단일 클래스 내에서 정의해야하는 3 개의 인터페이스가 있습니다. 예를여러 점을 같은 클래스로 참조하기

public class ChitChats : IServers, IClients, IInternalOnly 
{ 
    protected void SendChatMsg() { } 
    public void SendMsg() { SendChatMsg(); } 
} 

내가 가진 캐치

각 인터페이스는 실제로 같은 프레임 워크 어셈블리를 참조하는 다른 실행 파일입니다. 모든 메신저 시도는 관련 실행 가능한 참조가 노출 된 다른 사용 가능한 유형을보기 위해 모두 지정되어 있지 않은지 확인합니다.

제 질문은 기본 기준 유형이 다른 기준에 따라 바뀔 수있는 단일 단어/보트를 어떻게 참조 할 수 있습니까?

는 예를 들어 내가 할 수 할 일을

IServers.SendMsg() // Works 
IClients.SendMsg() // Breaks 
IInternalOnly.SendMsg() // Works as it inherits from IServers ... 

것입니다하지만 난 단지 다른 곳을위한 단일 인터페이스 이름을 사용하고 싶습니다. 그러나 나를 위해 연결하는 인터페이스 알고 똑똑해야 ...

당신은 하나의 공통 이름을 선택해야
IAwesomeInterface.SendMsg(); // Works ... <g> .. we dont care what was implemented out of the available options. 
+8

일부 답변을 수락 하시겠습니까? 아마도? –

+3

'각 인터페이스는 실제로 동일한 프레임 워크 어셈블리를 참조하는 다른 실행 파일입니다.'어떤 종류의 달 언어입니까? 당신이 의미하는 것을 명확히 할 수 있습니까? – asawyer

+0

저는 솔루션을 구성하는 약 80 개의 프로젝트를 가지고 있습니다. 핵심 프레임 워크에는 3 개의 참조가 있습니다. Server Porject, 클라이언트 프로젝트 그리고 내 회사 내부. 코드 섹션은 컴파일러 속성이있는 #if 블록을 사용하여 나눌 수 있습니다. 너 - 아주 좋았어. 구현할 수있는 인터페이스가 거의 1000 개가 있습니다 ... – Chris

답변

2

-SendMsg() 할 수있는 능력이 IMessageSender의 작업이 될 것입니다 만 필요로하는 방법 당신의인지 공간에서 그 생각을 한 번 선언하는 것.

관련 문제