Autor Beitrag
Saiwaa
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Mi 13.07.11 17:30 
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:
ausblenden 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")]
// und noch mehr Einträge...
// ... weiterer Quelltext...


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 user profile iconKha: C#-Tags hinzugefügt
gfoidl
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 157
Erhaltene Danke: 19

Win XP
C#, Fortran 95 - Visual Studio
BeitragVerfasst: Mi 13.07.11 18:05 
Hallo,

die Werte in der AssemblyInfo.cs anpassen.

Den Rest kannst du vergessen :-)

mfG Gü

_________________
Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!
Trashkid2000
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 561
Erhaltene Danke: 137



BeitragVerfasst: 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

Für diesen Beitrag haben gedankt: Saiwaa
Saiwaa Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: 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.

Für diesen Beitrag haben gedankt: Saiwaa
Saiwaa Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: 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.

Für diesen Beitrag haben gedankt: Saiwaa
Trashkid2000
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 561
Erhaltene Danke: 137



BeitragVerfasst: Do 14.07.11 18:08 
user profile iconSaiwaa hat folgendes geschrieben Zum zitierten Posting springen:
[...] 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).

Für diesen Beitrag haben gedankt: Saiwaa