У меня проблемы с использованием интерфейса, который я создаю.Я пытаюсь реализовать это, но там происходит ошибка.Любой ответ приветствуется.Заранее спасибо.
Здесь фактический интерфейс, который я хочу реализовать.
namespace CRDM.Core.Models
{
[Table("cities")]
public class City : ICity<CountryState>
{
}
[Table("country_states")]
public class CountryState : ICountryState<Country>
{
}
[Table("countries")]
public class Country : ICountry
{
}
}
namespace CRDM.Core.Abstractions.Entities
{
public interface ICity <TState> :
where TState : ICountryState<ICountry>
{
TState StateReference { get; set; }
}
public interface ICountryState<TCountry> :
where TCountry : ICountry
{
}
public interface ICountry
{
}
}
Я успешно реализую классы Country
и CountryState
, но в реализации City
есть ошибка.Здесь сообщение об ошибке.
Тип CRDM.Core.Models.CountryState
нельзя использовать в качестве параметра типа TState
в универсальном типе или методе ICity<TState>
.
Не существует неявного преобразования ссылок из CRDM.Core.Models.CountryState
в CRDM.Core.Abstractions.Entities.ICountryState<CRDM.Core.Abstractions.Entities.ICountry>
.