Ваш IKyoExecutionProcessor
интерфейс должен происходить от IExecutionProvider
следующим образом:
public interface IKyoExecutionProcessor : IExecutionProvider
{
string DestinationPath { get; set; }
}
Это гарантирует, что между интерфейсами существует отношение «есть», что также позволит вам реализовать KyoExecutionProcessor
класс, подобный следующему:
public class KyoExecutionProcessor : IKyoExecutionProcessor
{
public void ProcessFile(string file) { ... }
public string DestinationPath { get; set; }
}
Таким образом, любой объект, который реализует IKyoExecutionProcessor
, может быть назначен переменной типа IExecutionProvider
.
Processor.ExecutionProvider = KyoCustomProcessor; // You can now appoint IKyoExecutionProcessor instance to IExecutionProvider variable