2017-01-19 1 views
1

Ich möchte 2 Methoden mit demselben Namen, demselben Rückgabetyp, aber verschiedenen Parametern erstellen.Unterstützen Codefluent-Entitäten das Überladen von Methoden?

Als ich versuchte dies das Modell passierten folgendes mit:

  1. keine Fehlermeldung sofort erzeugt wurde, wenn das Modell der zweite Methode hinzugefügt wird.
  2. Die zweite Methode wurde nicht in der GUI für das Modell angezeigt.
  3. Beide Methoden erscheinen in der XML-Datei, die vom Model generiert wird.
  4. Wenn ich versuche, um das Modell zu bauen ich die folgende Fehlermeldung bekam:

Fehler 1 CF0075: Verfahren '_PR01_PayrollEmployeeFile_LoadBySocialSecurityNumber' für Verfahren ‚LoadBySocialSecurityNumber (System.String Social, System.String Company) 'with body' LOAD (Zeichenfolge socialSecurityNumber, Zeichenfolge companyCode) RAW 'existiert bereits. Versuchen Sie Ändern Sie Methodenname oder Methode PersistenceName. Amicids.DataProWarehouse.Model

Antwort

2

Zum guten Support bei Softfluent: Geben Sie mir 24 Stunden und überprüfen Sie, ob die folgende Lösung voll funktionsfähig ist und ich keine weiteren Probleme habe.

Ich denke, ich habe die Lösung, aber habe nicht völlig getestet und bemerkte etwas skurril in der XML, nachdem ich einen Build erstellt habe, aber vermute ich habe die XML-Datei beschädigt und habe keine Zeit, vollständig zu erkunden.

Die Lösung (ich denke): Setzen Sie den PersistenzName in der XML-Datei. Der Persistenzname entspricht dem Namen der generierten gespeicherten Prozedur.

<cf:method name="TestMethod" body="LOAD(string x) ORDER BY FirstName" persistenceName="TestMethod1" /> 
<cf:method name="TestMethod" body="LOAD(string x, string y) ORDER BY LastName" persistenceName="TestMethod2" /> 
+0

, dass die Lösung ist :-) –

Verwandte Themen