Attribut nicht gültig auf Deklarationstyp
-
06-07-2019 - |
Frage
Ich habe den folgenden Code, aber ich bin immer die Fehler folgende kompilieren:
Attribut ‚WebPartStorage‘ ist auf dieser Erklärung Typ nicht gültig. Es ist nur dann gültig, auf dem Eigentum, Indexer Erklärungen.
und
Attribut ‚Friendly‘ ist auf dieser Erklärung Typ nicht gültig. Es ist nur dann gültig, auf dem Eigentum, Indexer Erklärungen.
Ich habe meinen Code aus dem MSDN-Artikel geändert: http://msdn.microsoft.com/en-us/library/dd584174(office.11).aspx . Hat jemand eine Idee, was ich falsch mache, die diesen Fehler verursacht?
[Category("Custom Properties")]
[DefaultValue(RegionEnum.None)]
[WebPartStorage(Storage.Shared)]
[FriendlyName("Region")]
[Description("Select a value from the dropdown list.")]
[Browsable(true)]
protected RegionEnum _Region;
public RegionEnum Region
{
get
{
return _Region;
}
set
{
_Region = value;
}
}
Lösung
Sie scheinen das Attribut auf das Gebiet angebracht zu haben; haften Attribute immer auf das weiter , was (in diesem Fall das Feld). Sie sollten Ordnung wieder, so dass sie auf die Eigenschaft anstelle des Feldes zu halten.
BTW; geschützte Felder sind selten eine gute Idee (sie sollten privat sein); aber vor allem, wenn das Eigentum ist öffentlich: was ist der Punkt
protected RegionEnum _Region;
[Category("Custom Properties")]
[DefaultValue(RegionEnum.None)]
[WebPartStorage(Storage.Shared)]
[FriendlyName("Region")]
[Description("Select a value from the dropdown list.")]
[Browsable(true)]
public RegionEnum Region
{
get { return _Region; }
set { _Region = value; }
}
Andere Tipps
Die Meldung sagt Ihnen, nicht wahr? Sie versuchen, das Attribut auf ein Feld zu setzen, aber es ist nur gültig am Indexer und Eigenschaften.
protected RegionEnum _Region;
[Category("Custom Properties")]
[DefaultValue(RegionEnum.None)]
[Description("Select a value from the dropdown list.")]
[Browsable(true)]
[WebPartStorage(Storage.Shared)]
[FriendlyName("Region")]
public RegionEnum Region
{
get
{
return _Region;
}
set
{
_Region = value;
}
}
Hoffentlich Sie using Microsoft.SharePoint.WebPartPages;
haben, haben Sie?