samedi 14 février 2015

Class extends Abstract class which implements interface

I'm not sure if I'm going about this the correct way, but I want to be able to pass unknown object type into my ICountyDataStrategy methods, so I'm using generics. But now using ICountyDataStrategy in IDataReaderStrategy I don't know the generic type. Should I use a generic in IDataReaderStrategy also? Maybe there is an easier way I am not realizing. Any advice would be appreciated.



public interface IDataReaderStrategy
{
List<ICountyDataStrategy> countyData{get;set;}
}

public abstract class WebPageStrategy : IDataReaderStrategy
{
public List<ICountyDataStrategy> countyData { get; set; }
}

public abstract class ExcelStrategy : IDataReaderStrategy
{
public List<ICountyDataStrategy> countyData { get; set; }
}


public interface ICountyDataStrategy<T> where T : class
{

bool IsNewAddress<T>(T value);
void Save<T>(T value);

}
public abstract class RentalDataStrategy : ICountyDataStrategy<RentalData>
{
public bool IsNewAddress<RentalData>(RentalData value)
{
}

public virtual void Save<RentalData>(RentalData value)
{
}
}


public abstract class ListingDataStrategy : ICountyDataStrategy<ListingData>
{
public bool IsNewAddress<ListingData>(ListingData value)
{
}

public virtual void Save<ListingData>(ListingData value)
{
}
}

public class RentalData : RentalDataStrategy
{


}

Aucun commentaire:

Enregistrer un commentaire