Windows 서비스의 기본 클래스를 만들려고합니다. 만들 때이 자동으로 생성됩니다 :Windows 서비스의 기본 클래스
public partial class Service1 : ServiceBase
{
public class Base //added this to become a Base class
{
protected override void OnStart(string[] args)//generated code for Service
{
//a bunch of code here that I create
}
}
}
그리고이 클래스를 파생하고 싶 :
public class Derived : Base
{
void Call(string[] args)
{
Call test = new Call();
test.OnStart(args);///error says no suitable method found to override
}
}
이 서비스는 데이터베이스와 I의 여러 유형과 상호 작용하기 때문에 내가 이렇게 할 이유는 가능한 한 많은 코드를 재사용하고 싶습니다. 각각은 동일한 OnStart, OnStop 등을가집니다 ... 파생 클래스에서 가상의 protected, public을 사용하려고했습니다. 생성 된 코드도 변경할 수 없습니다.
어떻게 보호 된 재정의 OnStart를 호출 할 수 있습니까? 나는 또한 비공개 멤버를 결국 가질 것이고 그래서 다른 질문을 할 필요가 없다. 내가 도움이 될만한 것을 부를 때 알아야 할 것이 있다면 ..
'this' 인스턴스에 액세스하는 대신'Derived' 클래스 내에'Dervied' 인스턴스를 생성하는 이유는 무엇입니까? –
아니 뇌의 방귀, 감사 – user3825831