Ich beschäftige mich tiefer mit Generika und habe jetzt eine Situation, in der ich Hilfe brauche. Ich erhalte einen Kompilierungsfehler für die unten stehende Klasse 'Abgeleitet', wie im Betreff angegeben. Ich sehe viele ähnliche Beiträge, aber ich sehe die Beziehung nicht. Kann mir jemand sagen, wie ich das lösen kann?
using System;
using System.Collections.Generic;
namespace Example
{
public class ViewContext
{
ViewContext() { }
}
public interface IModel
{
}
public interface IView<T> where T : IModel
{
ViewContext ViewContext { get; set; }
}
public class SomeModel : IModel
{
public SomeModel() { }
public int ID { get; set; }
}
public class Base<T> where T : IModel
{
public Base(IView<T> view)
{
}
}
public class Derived<SomeModel> : Base<SomeModel> where SomeModel : IModel
{
public Derived(IView<SomeModel> view)
: base(view)
{
SomeModel m = (SomeModel)Activator.CreateInstance(typeof(SomeModel));
Service<SomeModel> s = new Service<SomeModel>();
s.Work(m);
}
}
public class Service<SomeModel> where SomeModel : IModel
{
public Service()
{
}
public void Work(SomeModel m)
{
}
}
}