Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Markup / Baml2006 / Baml6Assembly.cs / 1305600 / Baml6Assembly.cs
using System;
using System.Collections.Generic;
using System.Reflection;
using MS.Internal.WindowsBase;
namespace System.Windows.Baml2006
{
class Baml6Assembly
{
// Information needed to resolve a BamlAssembly to a CLR Assembly
public readonly string Name;
private Assembly _assembly;
///
///
/// A fully qualified assembly name
public Baml6Assembly(string name)
{
if (name == null)
{
throw new ArgumentNullException("name");
}
Name = name;
_assembly = null;
}
public Baml6Assembly(Assembly assembly)
{
if (assembly == null)
{
throw new ArgumentNullException("assembly");
}
Name = null;
_assembly = assembly;
}
public Assembly Assembly
{
get
{
if (_assembly != null)
{
return _assembly;
}
AssemblyName assemblyName = new AssemblyName(Name);
_assembly = SafeSecurityHelper.GetLoadedAssembly(assemblyName);
if (_assembly == null)
{
byte[] publicKeyToken = assemblyName.GetPublicKeyToken();
if (assemblyName.Version != null || assemblyName.CultureInfo != null || publicKeyToken != null)
{
try
{
_assembly = Assembly.Load(assemblyName.FullName);
}
catch
{
AssemblyName shortName = new AssemblyName(assemblyName.Name);
if (publicKeyToken != null)
{
shortName.SetPublicKeyToken(publicKeyToken);
}
_assembly = Assembly.Load(shortName);
}
}
else
{
_assembly = Assembly.LoadWithPartialName(assemblyName.Name);
}
}
return _assembly;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
using System;
using System.Collections.Generic;
using System.Reflection;
using MS.Internal.WindowsBase;
namespace System.Windows.Baml2006
{
class Baml6Assembly
{
// Information needed to resolve a BamlAssembly to a CLR Assembly
public readonly string Name;
private Assembly _assembly;
///
///
/// A fully qualified assembly name
public Baml6Assembly(string name)
{
if (name == null)
{
throw new ArgumentNullException("name");
}
Name = name;
_assembly = null;
}
public Baml6Assembly(Assembly assembly)
{
if (assembly == null)
{
throw new ArgumentNullException("assembly");
}
Name = null;
_assembly = assembly;
}
public Assembly Assembly
{
get
{
if (_assembly != null)
{
return _assembly;
}
AssemblyName assemblyName = new AssemblyName(Name);
_assembly = SafeSecurityHelper.GetLoadedAssembly(assemblyName);
if (_assembly == null)
{
byte[] publicKeyToken = assemblyName.GetPublicKeyToken();
if (assemblyName.Version != null || assemblyName.CultureInfo != null || publicKeyToken != null)
{
try
{
_assembly = Assembly.Load(assemblyName.FullName);
}
catch
{
AssemblyName shortName = new AssemblyName(assemblyName.Name);
if (publicKeyToken != null)
{
shortName.SetPublicKeyToken(publicKeyToken);
}
_assembly = Assembly.Load(shortName);
}
}
else
{
_assembly = Assembly.LoadWithPartialName(assemblyName.Name);
}
}
return _assembly;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SingleAnimation.cs
- CodeTypeConstructor.cs
- DbParameterCollection.cs
- EdmSchemaError.cs
- StringAnimationUsingKeyFrames.cs
- sqlstateclientmanager.cs
- DecoratedNameAttribute.cs
- HostProtectionException.cs
- filewebrequest.cs
- LayoutUtils.cs
- UIAgentRequest.cs
- ImportContext.cs
- Decorator.cs
- ExtensionFile.cs
- SafeRightsManagementQueryHandle.cs
- ReachDocumentReferenceCollectionSerializerAsync.cs
- HttpInputStream.cs
- Overlapped.cs
- SchemaDeclBase.cs
- DebugInfoGenerator.cs
- XPathAncestorIterator.cs
- XPathBuilder.cs
- ThemeInfoAttribute.cs
- SafeUserTokenHandle.cs
- WindowsAuthenticationModule.cs
- SchemaObjectWriter.cs
- BaseCollection.cs
- CroppedBitmap.cs
- BitmapCodecInfo.cs
- EventLogEntryCollection.cs
- ObjectManager.cs
- activationcontext.cs
- InertiaExpansionBehavior.cs
- VisualTransition.cs
- CustomAssemblyResolver.cs
- OleServicesContext.cs
- GroupByExpressionRewriter.cs
- FormViewInsertEventArgs.cs
- WindowCollection.cs
- HtmlInputRadioButton.cs
- ValueProviderWrapper.cs
- NavigatorInput.cs
- BindingsSection.cs
- XPathParser.cs
- CardSpaceShim.cs
- HttpModuleCollection.cs
- DtdParser.cs
- SmtpNetworkElement.cs
- SqlProviderServices.cs
- EntityTransaction.cs
- TextTreeTextBlock.cs
- OrderByLifter.cs
- DbDeleteCommandTree.cs
- OdbcDataReader.cs
- BorderGapMaskConverter.cs
- TemplateBuilder.cs
- PropertyChangedEventManager.cs
- RelationshipManager.cs
- CopyNodeSetAction.cs
- DescendantOverDescendantQuery.cs
- parserscommon.cs
- SspiSecurityToken.cs
- Registration.cs
- PagedDataSource.cs
- ViewBase.cs
- ExtendedProperty.cs
- XPathArrayIterator.cs
- CheckBoxBaseAdapter.cs
- CompositeCollection.cs
- WebPartUtil.cs
- SiteMap.cs
- XmlReaderSettings.cs
- Int16AnimationUsingKeyFrames.cs
- EventlogProvider.cs
- PresentationAppDomainManager.cs
- MaskedTextProvider.cs
- URIFormatException.cs
- DataBindEngine.cs
- KeyEvent.cs
- TTSVoice.cs
- LoadGrammarCompletedEventArgs.cs
- ResourceWriter.cs
- FormattedTextSymbols.cs
- Control.cs
- CompModHelpers.cs
- CodeSubDirectory.cs
- EditorPartCollection.cs
- SqlInternalConnection.cs
- ShapeTypeface.cs
- GlyphRun.cs
- DocumentPage.cs
- ParallelRangeManager.cs
- IconConverter.cs
- NeutralResourcesLanguageAttribute.cs
- DurableInstance.cs
- QilScopedVisitor.cs
- LocalizableAttribute.cs
- ServiceDescription.cs
- ListViewGroupConverter.cs
- StreamWriter.cs