SiteMapNode.GetExplicitResourceString(String, String, Boolean) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Retrieves a localized string based on a SiteMapNode attribute to localize, a default string to return if no resource is found, and a Boolean value indicating whether to throw an exception if no resource is found.
protected:
System::String ^ GetExplicitResourceString(System::String ^ attributeName, System::String ^ defaultValue, bool throwIfNotFound);
protected string GetExplicitResourceString (string attributeName, string defaultValue, bool throwIfNotFound);
member this.GetExplicitResourceString : string * string * bool -> string
Protected Function GetExplicitResourceString (attributeName As String, defaultValue As String, throwIfNotFound As Boolean) As String
Parameters
- attributeName
- String
The SiteMapNode attribute to localize.
- defaultValue
- String
The default value to return if a matching resource is not found.
- throwIfNotFound
- Boolean
true
to throw an InvalidOperationException, if an explicit resource is defined for attributeName
, defaultValue
is null
, and a localized value is not found; otherwise, false
.
Returns
A string representing the localized attribute.
Exceptions
attributeName
is null
.
A matching resource object was not found and throwIfNotFound
is true
.
Remarks
The GetExplicitResourceString method is invoked in the get
accessor of the Title property, the Description property, and any custom attributes that are defined in the Attributes property. The SiteMapProvider object by which the SiteMapNode is tracked must have its EnableLocalization property set to true
for the GetExplicitResourceString method to return a localized string. If the EnableLocalization is set to false
, localization is not performed and the GetExplicitResourceString method is never called.
The Title property, the Description property, and any custom attributes that are defined in the Attributes property first invoke the GetImplicitResourceString method. If it returns null
, the GetExplicitResourceString method is invoked with defaultValue
set to the value of the default value from the explicit resource expression (assuming one was defined) and throwIfNotFound
set to true
.
Note
The XmlSiteMapProvider class imposes the restriction that the SiteMapNode object cannot define both implicit resource expressions and explicit resource expressions for attributes. However, a custom provider implementation can choose to allow both.
The GetExplicitResourceString method uses the NameValueCollection collection of resource keys that the SiteMapNode object was initialized with. If a collection of resource keys was not specified, the GetExplicitResourceString returns null
.