WebFile Properties auslesen mit C# verursacht Compilerfehler
Hallo,
ich bin mir nicht sicher ob das hier die richtige Gruppe, aber vieleicht hat
ja jemand sowas schon mal gemacht.
Ich bin gerade dabei einige VBA-Makros in ein verwaltetes C# -AddIn unter
..NET 2.0 zu übernehmen. Dabei bin ich beim Auslesen der Eigenschaften eines
WebFiles auf ein Problem gestossen. Unter VBA sah das so aus:
MsgBox ActiveWeb.HomeNavigationNode.File.Properties("vti_author")
Unter C# sieht das nun so aus:
MessageBox.Show((string)
Application.ActiveWeb.HomeNavigationNode.File.Properties["vt i_author"]);
Hier bricht der Kompiler allerdings mit einer Fehlermeldung ab:
"Microsoft.Office.Interop.FrontPage.Properties.this[string]" wird von der
Sprache nicht unterstützt.
C# unterstützt this[string] - beutze ich selber; daran kann es also nicht
liegen. Unter VB.NET klappt es analog ebenfalls:
MsgBox(CStr(Application.ActiveWeb.HomeNavigationNode.File.Pr operties("vti_author")))
Frage: Wie kann ich unter C# auf eine bestimmte Eigenschaft eines WebFiles
zugreifen? Eine Item-Eigenschaft gibt's bei Properties nicht... und mittels
foreach bekomme ich nur eine Auflistung der Schlüssel - aber was mache ich
dann damit?
Bin ich blind? Habe ich was übersehen? Gegoogelt habe ich schon, ohne
Erfolg. Hat jemand eine Idee?
Gruß Stephan
Re: WebFile Properties auslesen mit C# verursacht Compilerfehler
Stephan Janssen schrieb:
> Unter C# sieht das nun so aus:
>
> MessageBox.Show((string) Application.ActiveWeb.HomeNavigationNode.File.Properties["vt i_author"]);
>
> Hier bricht der Kompiler allerdings mit einer Fehlermeldung ab:
> "Microsoft.Office.Interop.FrontPage.Properties.this[string]" wird von der
> Sprache nicht unterstützt.
Ja, kann ich reproduzieren. Mit Expression Web tritt das Problem ebenfalls
auf. Ultima ratio wäre vorerst wohl eine in Visual Basic geschrieben
Assembly, die die Properties-Auflistung analysiert und bspw. ein
System.Collections.IDictionary zurückgibt. Ich frage aber mal in den
privaten Newsgroups nach.
--
<http://schneegans.de/sv/> - XML Schema Validator |
<http://schneegans.de/xp/> - XHTML Proxy |
<http://www.politicallyincorrect.de/> - Mein Lieblings-Blog |
Re: WebFile Properties auslesen mit C# verursacht Compilerfehler
Stephan Janssen schrieb:
> MessageBox.Show((string) Application.ActiveWeb.HomeNavigationNode.File.Properties["vt i_author"]);
In C# muß man
MessageBox.Show((string) Application.ActiveWeb.HomeNavigationNode.File.Properties.get _Item("vti_author"));
schreiben, dann funktioniert es. Bedank dich bei
<https://mvp.support.microsoft.com/profile=7F982F8F-D02E-421C-AA5F-B8A3D5588D26>.
--
<http://schneegans.de/sv/> - XML Schema Validator |
<http://schneegans.de/xp/> - XHTML Proxy |
<http://www.politicallyincorrect.de/> - Mein Lieblings-Blog |
Re: WebFile Properties auslesen mit C# verursacht Compilerfehler
"Christoph Schneegans" wrote:
> In C# muß man
>
> MessageBox.Show((string) Application.ActiveWeb.HomeNavigationNode.File.Properties.get _Item("vti_author"));
Danke für den Tip, funktioniert prima. Was nur wundert ist, dass die
Funktion get_Item() nicht bei IntelliSence auftaucht, und andere Auflistungen
wie MetaTags[] wie gewohnt funktionieren.
Sei's drum, nochmals danke (auch an den MVP-Kollegen).
Stephan