Hier ist der Konstruktor:Wie übergebe ich einen generischen Typparameter an eine Methode, die von einem Konstruktor aufgerufen wird?
public PartyRoleRelationship(PartyRole firstRole, PartyRole secondRole)
{
if (firstRole == secondRole)
throw new Exception("PartyRoleRelationship cannot relate a single role to itself.");
if (firstRole.OccupiedBy == null || secondRole.OccupiedBy == null)
throw new Exception("One or both of the PartyRole parameters is not occupied by a party.");
// Connect this relationship with the two roles.
_FirstRole = firstRole;
_SecondRole = secondRole;
T = _FirstRole.GetType().MakeGenericType();
_SecondRole.ProvisionRelationship<T>(_FirstRole); // Connect second role to this relationship.
}
In der letzten Zeile, wo es ProvisionRelationship auf _SecondRole nennt, es mir die Laufzeitfehler ist zu geben: Typen oder Namespace ‚T‘ konnte nicht gefunden werden ...
Wie kann ich T entweder (a) korrekt zuweisen oder (b) einen generischen Typ mit dem Konstruktor übergeben? Ich habe schon ein paar Posts durchgesehen, aber vielleicht etwas aus Mangel an Verständnis vermisst. Jedermanns Hilfe würde sehr geschätzt werden.
Ich habe Ihren Titel bearbeitet. Bitte lesen Sie "[Sollten die Fragen" Tags "in ihren Titeln enthalten?] (Http://meta.stackexchange.com/questions/19190/)", wobei der Konsens "nein, sie sollten nicht" lautet. –
Was soll .ProvisionRelationship (PartyRole-Rolle) erreichen? – Moop