Also versuche ich, eine Ausnahme zu machen, um meine C#-Klasse über Erweiterungsmethoden einem Proto-Objekt zuzuordnen. Es scheint keinen generischen Typ für "dies" zu akzeptieren?
public static ResponseReply ToProtoObject(this Response<T> reply) {
ResponseReply answer = new() {
Succes = reply.Success
};
if (reply.Object != null)
{
answer.ObjectId = reply.Object.Id.ToString();
}
if (reply.Messages != null)
{
answer.Messages.AddRange(reply.Messages.Select(x => x.ToProtoObject()));
}
return answer;
}
das sind die Basisklassen aus der Antwort
public class Response<T> where T : BaseObjectBo
{
public T Object { get; set; }
public bool Success { get; set; }
public List<Message> Messages { get; set; }
}
public class BaseObjectBo
{
public Guid Id { get; set; }
}
Beachten Sie, dass Sie nur <T>
Ihrer Methodensignatur hinzufügen müssen.
public static ResponseReply ToProtoObject<T>(this Response<T> reply)
where T : BaseObjectBo
Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.
Bei Verstößen wenden Sie sich bitte [email protected] Löschen.
Lass mich ein paar Worte sagen