Generische Erweiterung Methode, bei der base-Klasse ist generisch zu

Im making-Erweiterung-Methode. Es so Aussehen:

public static class HttpClientDataExtension
{
    public static async Task<TObject> GetAsync<TObject>(this HttpClient httpClient) 
        where TObject : BaseEntity<T> // T can be int or string 
    {
        // implementation...
    }
}

Ist es möglich, generische Erweiterung Methode bei der Basisklasse von TObject ist generic auch? Zum Beispiel kann es sein, BaseEntity<int> als auch BaseEntity<string>.

Basis-entity-Klasse sieht wie folgt aus:

public abstract class BaseEntity<T>
{
    public T Id { get; set; }
}

Und Beispiel der Verwendung im model-Klasse:

public class Project : BaseEntity<int>
{
    public string Name { get; set; }

    public string Description { get; set; }
}
0
2019-09-19 18:34:40
Quelle

Sehen Sie sich andere Fragen zu Tags an