CompilerInfo::IsCodeDomProviderTypeValid Property
Returns a value indicating whether the language provider implementation is configured on the computer.
Assembly: System (in System.dll)
Property Value
Type: System::Booleantrue if the language provider implementation type is configured on the computer; otherwise, false.
Use the IsCodeDomProviderTypeValid property to check the CodeDomProvider implementation before accessing the provider properties or methods. For example, after you get the language provider settings from the GetCompilerInfo method, use the IsCodeDomProviderTypeValid property to verify the provider type implementation before calling the CreateProvider method or using the CodeDomProviderType property.
The following code example determines whether the input language has a configured CodeDomProvider implementation on the computer. If there is a provider configured for the specified language, the example displays the language provider configuration settings. This code example is part of a larger example provided for the CompilerInfo class.
CodeDomProvider^ provider = nullptr; CompilerInfo^ info = CodeDomProvider::GetCompilerInfo( configLanguage ); // Check whether there is a provider configured for this language. if ( info->IsCodeDomProviderTypeValid ) { // Get a provider instance using the configured type information. provider = dynamic_cast<CodeDomProvider^>(Activator::CreateInstance( info->CodeDomProviderType )); if ( provider ) { // Display information about this language provider. Console::WriteLine( "Language provider: {0}", provider->ToString() ); Console::WriteLine(); Console::WriteLine( " Default file extension: {0}", provider->FileExtension ); Console::WriteLine(); // Get the compiler settings for this language. CompilerParameters^ langCompilerConfig = info->CreateDefaultCompilerParameters(); if ( langCompilerConfig ) { Console::WriteLine( " Compiler options: {0}", langCompilerConfig->CompilerOptions ); Console::WriteLine( " Compiler warning level: {0}", langCompilerConfig->WarningLevel.ToString() ); } } } if ( provider == nullptr ) // Tell the user that the language provider was not found. Console::WriteLine( "There is no provider configured for input language \"{0}\".", configLanguage );
for calling members of CompilerInfo. Demand value: LinkDemand; Associated PermissionState enumeration value: Unrestricted; NIB: Named Permission Sets: FullTrust.
Available since 2.0