ConfigurationElement.LockAllAttributesExcept Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает коллекцию заблокированных атрибутов.
public:
property System::Configuration::ConfigurationLockCollection ^ LockAllAttributesExcept { System::Configuration::ConfigurationLockCollection ^ get(); };
public System.Configuration.ConfigurationLockCollection LockAllAttributesExcept { get; }
member this.LockAllAttributesExcept : System.Configuration.ConfigurationLockCollection
Public ReadOnly Property LockAllAttributesExcept As ConfigurationLockCollection
Значение свойства
Коллекция ConfigurationLockCollection заблокированных атрибутов (свойств) элемента.
Примеры
В следующем примере показано, как использовать LockAllAttributesExcept.
// Show how to use LockAllAttributesExcept.
// It locks and unlocks all urls elements
// except the port.
static void LockAllAttributesExcept()
{
try
{
// Get current configuration file.
System.Configuration.Configuration config =
ConfigurationManager.OpenExeConfiguration(
ConfigurationUserLevel.None);
// Get the MyUrls section.
UrlsSection myUrlsSection =
config.GetSection("MyUrls") as UrlsSection;
if (myUrlsSection == null)
Console.WriteLine(
"Failed to load UrlsSection.");
else
{
IEnumerator elemEnum =
myUrlsSection.Urls.GetEnumerator();
int i = 0;
while (elemEnum.MoveNext())
{
// Get current element.
ConfigurationElement element =
myUrlsSection.Urls[i];
// Get current element lock all attributes.
ConfigurationLockCollection lockAllAttributesExcept =
element.LockAllAttributesExcept;
// Add or remove the lock on all attributes
// except port.
if (lockAllAttributesExcept.Contains("port"))
lockAllAttributesExcept.Remove("port");
else
lockAllAttributesExcept.Add("port");
string lockedAttributes =
lockAllAttributesExcept.AttributeList;
Console.WriteLine(
"Element {0} Locked attributes list: {1}",
i.ToString(), lockedAttributes);
i += 1;
config.Save(ConfigurationSaveMode.Full);
}
}
}
catch (ConfigurationErrorsException e)
{
Console.WriteLine(
"[LockAllAttributesExcept: {0}]",
e.ToString());
}
}
' Show how to use LockAllAttributesExcept.
' It locks and unlocks all urls elements
' except the port.
Shared Sub LockAllAttributesExcept()
Try
' Get the current configuration file.
Dim config _
As System.Configuration.Configuration = _
ConfigurationManager.OpenExeConfiguration( _
ConfigurationUserLevel.None)
' Get the MyUrls section.
Dim myUrlsSection As UrlsSection = _
config.GetSection("MyUrls")
If myUrlsSection Is Nothing Then
Console.WriteLine("Failed to load UrlsSection.")
Else
Dim elemEnum As IEnumerator = _
myUrlsSection.Urls.GetEnumerator()
Dim i As Integer = 0
While elemEnum.MoveNext()
' Get current element.
Dim element _
As ConfigurationElement = _
myUrlsSection.Urls(i)
' Get current element lock all attributes.
Dim lockAllAttributesExcept _
As ConfigurationLockCollection = _
element.LockAllAttributesExcept
' Add or remove the lock on all attributes
' except port.
If lockAllAttributesExcept.Contains("port") Then
lockAllAttributesExcept.Remove("port")
Else
lockAllAttributesExcept.Add("port")
End If
Dim lockedAttributes As String = _
lockAllAttributesExcept.AttributeList()
Console.WriteLine("Element {0} Locked attributes list: {1}", _
i.ToString(), lockedAttributes)
i += 1
config.Save(ConfigurationSaveMode.Full)
End While
End If
Catch e As ConfigurationErrorsException
Console.WriteLine("[LockAllAttributesExcept: {0}]", _
e.ToString())
End Try
End Sub
Комментарии
Свойство LockAllAttributesExcept позволяет заблокировать все атрибуты одновременно, за исключением указанного атрибута. Для этого используйте Contains метод , как описано в разделе Пример.
Примечание
Свойство LockAllAttributesExcept позволяет предотвратить изменение дочерних элементов конфигурации элемента, к которому применяется правило. Используйте свойство , LockItem если вы хотите установить общую блокировку самого родительского элемента и его дочерних элементов.
Примечания для тех, кто наследует этот метод
При одновременном LockAllAttributesExcept использовании свойств и LockAttributes применяется самое строгое правило.