Kaktusfan1707 Geschrieben 29. Oktober 2013 Teilen Geschrieben 29. Oktober 2013 (bearbeitet) Hallo, ich versuche gerade in einem t4 Template eine Funktion aufzurufen, die nicht im Template liegt. <# foreach(KeyValuePair<int, string> tr in Translation.LoadAllForEnum()) {#> <#= tr.Value #> = <#= tr.Key #> , <#}#> Der namespace ist auch drin: <#@ import namespace="Testapplication.Model" #> Doch er kann den Namespace oder die Funktion LoadAllForEnum nicht finden. Was mache ich falsch? Bearbeitet 29. Oktober 2013 von Kaktusfan1707 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 29. Oktober 2013 Teilen Geschrieben 29. Oktober 2013 Wie lautet die vollständige Fehlermeldung? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 29. Oktober 2013 Autor Teilen Geschrieben 29. Oktober 2013 Kompilierte Transformation: Der Name 'Translation' ist im aktuellen Kontext nicht vorhanden. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 29. Oktober 2013 Teilen Geschrieben 29. Oktober 2013 Kompilierte Transformation: Der Name 'Translation' ist im aktuellen Kontext nicht vorhanden.Also geht's um Translation, nicht um LoadAllForEnum. Was ist Translation und in welchem Namespace liegt es? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 29. Oktober 2013 Autor Teilen Geschrieben 29. Oktober 2013 namespace Testapplication.Model { public class Translation { public static Dictionary<int, string> LoadAllForEnum() { ... } } } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 29. Oktober 2013 Teilen Geschrieben 29. Oktober 2013 Hast du eine assembly-Direktive für die Bibliothek, die Translation enthält? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 29. Oktober 2013 Autor Teilen Geschrieben 29. Oktober 2013 Nein. Die beiden Dateien (tt-File und Translation.cs) liegen im gleichen Ordner und sind im gleichen Namespace. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 29. Oktober 2013 Teilen Geschrieben 29. Oktober 2013 Das ist T4 egal. Wenn du eine Klasse benutzt, musst du eine Assembly-Direktive dafür angeben. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 29. Oktober 2013 Autor Teilen Geschrieben 29. Oktober 2013 Und wie geht das? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 29. Oktober 2013 Teilen Geschrieben 29. Oktober 2013 T4 Assembly Directive Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 30. Oktober 2013 Autor Teilen Geschrieben 30. Oktober 2013 Das ist bist jetzt eine WindowsForms-Anwendung. Also brauche ich ein zweites Projekt für eine Library in die meine Klasse mit der Funktion kommt und diese dll kann ich dann im Template verwenden? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 30. Oktober 2013 Teilen Geschrieben 30. Oktober 2013 Ist das ein Laufzeit-Template oder ein Designzeit-Template? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 30. Oktober 2013 Autor Teilen Geschrieben 30. Oktober 2013 Designzeit Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 30. Oktober 2013 Teilen Geschrieben 30. Oktober 2013 Dann solltest du die im Template benötigte Klasse in eine Bibliothek auslagern. Du kannst ja schlecht eine Assembly in einem Template verwenden, das zum Bauen derselben Assembly benötigt wird. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 30. Oktober 2013 Autor Teilen Geschrieben 30. Oktober 2013 Ok, danke für die Hilfe. Es funktioniert jetzt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 30. Oktober 2013 Autor Teilen Geschrieben 30. Oktober 2013 Jetzt habe ich mich doch zu früh gefreut. In der WindowsForms-Anwendung binde ich meine neue Monitoring.dll ein. Doch im Code von einer Form unterringelt er mir "MonitoringLibrary" und "Settings" was eine Klasse in MonitoringLibrary ist findet er auch nicht. using MonitoringLibrary; using System; using System.Windows.Forms; namespace MeinMonitoring { public partial class Optionen : Form { Settings user; Settings password; ... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 30. Oktober 2013 Teilen Geschrieben 30. Oktober 2013 Wie lautet die Fehlermeldung? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 30. Oktober 2013 Autor Teilen Geschrieben 30. Oktober 2013 Der Typ- oder Namespacename 'MonitoringLibrary'' konnte nicht gefunden werden. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) Aber die dll ist ja eingebunden. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 30. Oktober 2013 Teilen Geschrieben 30. Oktober 2013 Was heißt denn "eingebunden"? Hast du einen Assemblyverweis? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 30. Oktober 2013 Autor Teilen Geschrieben 30. Oktober 2013 Unter "Verweise" steht "MonitoringLibrary" Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kaktusfan1707 Geschrieben 30. Oktober 2013 Autor Teilen Geschrieben 30. Oktober 2013 So, nach etwas rumprobieren und Studio neustarten funktioniert es. Kann aber nicht sagen, an was es lag. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.