Wählen Sie Elemente in der Liste aus, die mit einer Schnittstelle übereinstimmen
Ich habe die folgenden Schnittstellen definiert:
public interface IStep
{
string Name { get; set; }
}
public interface IStepBuildDataSet : IStep
{
DataSet Data { get; set; }
}
public interface IStepBuildFile : IStep
{
byte File { get; set; }
}
Ich habe Code, der diese Schnittstellen verwendet:
public List<IStep> Steps { get; set; }
public void RunJob()
{
// pseudo code, need to update:
IStepBuildDataSet buildDataSet = Steps.Single(s => s is IStepBuildDataSet);
IStepBuildFile buildFile = Steps.Single(s => s is IStepBuildFile);
// call methods on Steps
}
Was ist die richtige Syntax, um den Pseudo-Code zu ersetzen? Ich möchte den Schritt in der Liste erhalten, der eine certian Schnittstelle implementiert. Die Liste enthält jeweils nur einen Eintrag.