AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Java -> C#

Ein Thema von Luckie · begonnen am 18. Okt 2006 · letzter Beitrag vom 19. Okt 2006
Antwort Antwort
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

Java -> C#

  Alt 18. Okt 2006, 15:09
Ich muss hier Java Code nach C# portieren. Größtenteils läßt sich das mit Copy and paste machen. Doch ein zwei Problem habe ich.
Code:
            Transaction tx = null;
            Session session = InitSessionFactory.getInstance().getCurrentSession();
            try
            {
                tx = session.beginTransaction();
                List honeys = session.createQuery("select h from Honey as h").list(); // erster Fehler: List
                for (Iterator iter = honeys.iterator(); iter.hasNext(); ) // zweiter Fehler Iterator
                {
                    Honey element = (Honey)iter.next();
                    // TODO: Ausgabe
                }
                tx.commit();
            }
Zitat:
Die Verwendung von Typ "System.Collections.Generic.List<T>" (generisch) macht das 1-Typargument erforderlich.
und der Typ Iterator ist nicht bekannt.
Wobei erwähnt werden sollte, dass der Typ Session aus einer .NET Assembly stammt die mit ikvmc aus Java Bytecode generiert wurde.

Code:
List<Honey> honeys = ..
hilft auch nicht. dann kommt die fehlermeldung:
Zitat:
Der Typ "java.util.List" kann nicht implizit in "System.Collections.Generic.List<de.laliluna.examp le.Honey>" konvertiert werden. Es ist bereits eine explizite Konvertierung vorhanden. (Möglicherweise fehlt eine Umwandlung.)
Ja, und wie mache ich das mit dem Iterator?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: Java -> C#

  Alt 18. Okt 2006, 15:28
Statt .iterator .GetEnumerator() verwenden, oder am besten gleich foreach
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Java -> C#

  Alt 18. Okt 2006, 15:38
Ich bin in C# noch nicht so fit. Wie würde das mit foreach aussehen? Danke schon mal.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#4

Re: Java -> C#

  Alt 18. Okt 2006, 15:50
foreach ist for recht ähnlich..

Code:
foreach(ElementClass element in list) {
  // code
}
Dementsprechend müsste dein Code in der foreach-Form ungefähr so aussehen:
Code:
foreach(Honey honey in honeys) {
  // TODO: Ausgabe
}
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Java -> C#

  Alt 19. Okt 2006, 10:06
Ja gut, das scheint zu funktionieren.

Gibt es noch eine Lösung zu dem Problem mit der Liste?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#6

Re: Java -> C#

  Alt 19. Okt 2006, 10:16
Es sind wohl zwei verschiedene List-Typen. Versuch doch mal aus
Code:
List honeys = session.createQuery("select h from Honey as h").list(); // erster Fehler: List
ein
Code:
java.util.List honeys = ...
zu machen.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Java -> C#

  Alt 19. Okt 2006, 10:31
Gute Idee. Das funktioniert. Jetzt kann ich nur wieder kein foreach nehmen:
Zitat:
Eine foreach-Anweisung kann nicht für Variablen vom Typ "java.util.List" verwendet werden, da "java.util.List" keine öffentliche Definition für "GetEnumerator" enthält.
Jetzt müsste ich das wohl wieder über den Iterator lösen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#8

Re: Java -> C#

  Alt 19. Okt 2006, 10:45
Dort muss es wahrscheinlich auch wieder java.util.Iterator heißen.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Java -> C#

  Alt 19. Okt 2006, 10:49
Hach, ihr seid spitze.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz