Entwickler-Ecke
Sonstiges (.NET) - Assembly-Infos via Attribute ändern
Saiwaa - Mi 13.07.11 17:30
Titel: Assembly-Infos via Attribute ändern
Hallo zusammen,
ich habe eine Anfängerfrage, die sich mir im Rahmen meiner FIAE-Ausbildung und meiner Einarbeitung in Visual Studio 2010 (C#) stellt.
Es geht um das Ändern/Konfigurieren der Assembly-Informationen. In diversen Quellen (Bücher, Internet) ist Quelltext zu finden, der in etwa so ausschaut:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; [assembly: AssemblyTitle("Beispiel-Titel")] [assembly: AssemblyDescription("Bla blubb...")] [assembly: AssemblyCompany("Company@2011")] |
Beim Kompilieren wird der Fehler ausgegeben, dass doppelte Einträge vorhanden sind ("Doppeltes Assembly ...-Attribut").
Das ist soweit nachvollziehbar, da ja automatisch eine AssemblyInfo.cs angelegt wird, die unter Properties erscheint und schon diese Infos enthält.
Aber irgendwie muss es doch möglich sein, diese Infos mit o.a. Code zu überschreiben, denn sonst ergibt es IMHO auch keinen Sinn, dass sowas in Lehrbüchern gelehrt wird.
Wenn ich in der AssemblyInfo.cs die entsprechenden Attribute auskommentiere/lösche, lässt sich zwar der Quelltext fehlerlos kompilieren, die Infos stehen jedoch nicht in der Datei drin.
Was muss ich tun, um die Attribute in der Datei zu überschreiben?
Vielen Dank für eure Hilfe jetzt schon an dieser Stelle :-)
Saiwaa
Moderiert von
Kha: C#-Tags hinzugefügt
gfoidl - Mi 13.07.11 18:05
Hallo,
die Werte in der AssemblyInfo.cs anpassen.
Den Rest kannst du vergessen :-)
mfG Gü
Trashkid2000 - Mi 13.07.11 18:12
Hallo,
habe auch grad mal was ausprobiert:
Bei den Eigenschaften von "AssemblyInfo" einfach die Aktion beim Buildvorgang auf "Keine" stellen.
Oder diese gleich ganz löschen... Ist aber nicht die feine Art.
LG
Saiwaa - Do 14.07.11 09:25
Danke für die Antworten u. die Kennzeichnung des Quelltextes mit Tags durch den Mod.
Mir stellt sich die Frage, warum sowas in Lehrbüchern vorkommt ohne zu erwähnen, was rundherum noch zu beachten ist. :roll:
Ich werde bzgl. Attribute die Anpassung der Infos zukünftig in der AssemblyInfo.cs vornehmen.
Sollte doch noch jemand eine weitere Lösung parat haben --> her damit.
Ich lasse das Thema daher noch als "nicht beantwortet" deklariert.
Gruß Saiwaa :D
Kha - Do 14.07.11 10:35
Was genau ist jetzt noch die Frage? Die AssemblyInfo.cs ist auf jeden Fall die richtige Zieldatei für solche Änderungen, sie trägt ihren Namen nicht zum Spaß ;) .
Ralf Jansen - Do 14.07.11 11:16
Zitat: |
Aber irgendwie muss es doch möglich sein, diese Infos mit o.a. Code zu überschreiben, denn sonst ergibt es IMHO auch keinen Sinn, dass sowas in Lehrbüchern gelehrt wird. |
Was für ein Lehrbuch? Die Assembly.cs ist eine reine Visual Studio Konvention hätte also nur was in einem speziellen Visual Studio Buch zu suchen. Wo du die Assembly Attribute unterbringst ist in .Net dir überlassen. Mit ein paar Einschränkungen wie zum Beispiel das die nur einmal auftauchen dürfen oder das die nicht in einem Namespace definiert sein dürfen. Das sollte aber in einem .Net Lehrbuch stehen. Insofern ist das gezeigten Beispielfragment korrekt.
Saiwaa - Do 14.07.11 13:25
Es handelt sich um ein Lehrbuch für Visual C# 2010 und im Internet habe ich mehrfach auf Seiten zum Thema C# ähnliche Codefragmente gefunden.
Die Frage lautet wie folgt:
Wenn in einem Lehrbuch solche Codebeispiele zum Konfigurieren der Assembly-Infos vorgestellt werden ohne zu erwähnen, dass offensichtlich die AssemblyInfo.cs gelöscht resp. die entsprechenden Zeilen darin auskommentiert werden müssen, dann muss das doch irgendwie machbar sein und der Fehler aufgrund falscher Bedienung u./o. Unkenntnis meinerseits zu suchen sein.
Was mache ich falsch, wie geht´s richtig o. einfach nur als unwichtig vermerken und stets in der AssemblyInfo.cs zumfrickeln? 8)
Ralf Jansen - Do 14.07.11 17:21
In dem Fall würde ich sagen solltest du als Projektvorlage in Visual Studio für solche Beispiele immer 'Empty Project' (oder eben das deutsche Äquivalent davon) auswählen. Davon geht vermutlich dein Lehrbuch aus.
Trashkid2000 - Do 14.07.11 18:08
Saiwaa hat folgendes geschrieben : |
[...] einfach nur als unwichtig vermerken und stets in der AssemblyInfo.cs zumfrickeln? |
Naja, Du musst ja nicht unbedingt direkt die werte in die AssemblyInfo.cs schreiben.
Es gibt auch unter Properties -> Anwendung -> Assemblyinformationen einen Dialog, um die Werte zu setzen (die aber natürlich dann auch nur in die AssemblyInfo geschrieben werden).
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!