Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / Compilation / NonBatchDirectoryCompiler.cs / 1 / NonBatchDirectoryCompiler.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Compilation {
using System;
using System.IO;
using System.Collections;
using System.Reflection;
using System.Configuration;
using System.Web.Hosting;
using System.Web.Util;
using System.Web.Caching;
using System.Web.UI;
using System.Web.Configuration;
/*
* This class makes sure that every file in a directory is compiled individually (i.e. it
* doesn't use batching. Also, the assemblies get stable names.
*/
internal class NonBatchDirectoryCompiler {
// The config section for the set of build providers that we handle
private CompilationSection _compConfig;
private VirtualDirectory _vdir;
internal NonBatchDirectoryCompiler(VirtualDirectory vdir) {
_vdir = vdir;
_compConfig = RuntimeConfig.GetConfig(_vdir.VirtualPath).Compilation;
}
internal void Process() {
foreach (VirtualFile vfile in _vdir.Files) {
string extension = UrlPath.GetExtension(vfile.VirtualPath);
// Skip any file for which we can't get a BuildProvider type, as it is not
// compilable.
Type buildProviderType = CompilationUtil.GetBuildProviderTypeFromExtension(_compConfig,
extension, BuildProviderAppliesTo.Web, false /*failIfUnknown*/);
if (buildProviderType == null)
continue;
// If it's a source file, skip it. We need to do this for v1 compatibility,
// since v1 VS projects contain many source files which have already been
// precompiled into bin, and that should not be compiled dynamically
if (buildProviderType == typeof(SourceFileBuildProvider))
continue;
// For the same reason, skip resources
if (buildProviderType == typeof(ResXBuildProvider))
continue;
// Call GetVPathBuildResult to cause the file to be compiled. We ignore the
// return value.
BuildManager.GetVPathBuildResult(vfile.VirtualPathObject);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Compilation {
using System;
using System.IO;
using System.Collections;
using System.Reflection;
using System.Configuration;
using System.Web.Hosting;
using System.Web.Util;
using System.Web.Caching;
using System.Web.UI;
using System.Web.Configuration;
/*
* This class makes sure that every file in a directory is compiled individually (i.e. it
* doesn't use batching. Also, the assemblies get stable names.
*/
internal class NonBatchDirectoryCompiler {
// The config section for the set of build providers that we handle
private CompilationSection _compConfig;
private VirtualDirectory _vdir;
internal NonBatchDirectoryCompiler(VirtualDirectory vdir) {
_vdir = vdir;
_compConfig = RuntimeConfig.GetConfig(_vdir.VirtualPath).Compilation;
}
internal void Process() {
foreach (VirtualFile vfile in _vdir.Files) {
string extension = UrlPath.GetExtension(vfile.VirtualPath);
// Skip any file for which we can't get a BuildProvider type, as it is not
// compilable.
Type buildProviderType = CompilationUtil.GetBuildProviderTypeFromExtension(_compConfig,
extension, BuildProviderAppliesTo.Web, false /*failIfUnknown*/);
if (buildProviderType == null)
continue;
// If it's a source file, skip it. We need to do this for v1 compatibility,
// since v1 VS projects contain many source files which have already been
// precompiled into bin, and that should not be compiled dynamically
if (buildProviderType == typeof(SourceFileBuildProvider))
continue;
// For the same reason, skip resources
if (buildProviderType == typeof(ResXBuildProvider))
continue;
// Call GetVPathBuildResult to cause the file to be compiled. We ignore the
// return value.
BuildManager.GetVPathBuildResult(vfile.VirtualPathObject);
}
}
}
}
// 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
- SingleAnimationUsingKeyFrames.cs
- EllipseGeometry.cs
- PreservationFileReader.cs
- PeerPresenceInfo.cs
- XmlCharType.cs
- DataRow.cs
- DataAccessor.cs
- OdbcConnectionStringbuilder.cs
- HttpDictionary.cs
- SiteMapPath.cs
- TypeDescriptionProviderAttribute.cs
- PKCS1MaskGenerationMethod.cs
- DbMetaDataFactory.cs
- CodeAssignStatement.cs
- PropertyDescriptor.cs
- XmlSchemaNotation.cs
- X509ChainPolicy.cs
- CodeRemoveEventStatement.cs
- KeyFrames.cs
- FirstMatchCodeGroup.cs
- UnsafeNativeMethods.cs
- TextEffect.cs
- BinaryMessageEncodingBindingElement.cs
- Calendar.cs
- CustomAttributeBuilder.cs
- ChtmlTextWriter.cs
- CustomValidator.cs
- PasswordPropertyTextAttribute.cs
- WindowsContainer.cs
- EntityAdapter.cs
- CanonicalFormWriter.cs
- OneToOneMappingSerializer.cs
- HtmlElementCollection.cs
- ClusterRegistryConfigurationProvider.cs
- TextEffect.cs
- _UriSyntax.cs
- AnnotationDocumentPaginator.cs
- PageParserFilter.cs
- RectangleHotSpot.cs
- RelationshipNavigation.cs
- DocComment.cs
- EntryPointNotFoundException.cs
- LongTypeConverter.cs
- CompositeScriptReference.cs
- OleDbParameterCollection.cs
- GenericWebPart.cs
- Calendar.cs
- UncommonField.cs
- EmptyStringExpandableObjectConverter.cs
- TreeNodeEventArgs.cs
- TableItemPattern.cs
- XamlFilter.cs
- RegexWorker.cs
- DataGridViewCellCancelEventArgs.cs
- ListViewItem.cs
- HyperLinkField.cs
- PublishLicense.cs
- DesignerTransactionCloseEvent.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- _UriSyntax.cs
- IPAddressCollection.cs
- CallSiteHelpers.cs
- FontCollection.cs
- SessionIDManager.cs
- DetailsViewCommandEventArgs.cs
- MultiBindingExpression.cs
- PartialTrustHelpers.cs
- CDSCollectionETWBCLProvider.cs
- RelatedView.cs
- PenContext.cs
- ApplicationSettingsBase.cs
- DocumentOrderComparer.cs
- OpenTypeCommon.cs
- ProviderUtil.cs
- SafeRegistryHandle.cs
- ShapingWorkspace.cs
- HtmlTernaryTree.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- MessageBox.cs
- TdsValueSetter.cs
- BezierSegment.cs
- MetadataException.cs
- SecurityHelper.cs
- EncodingTable.cs
- ColumnReorderedEventArgs.cs
- MinimizableAttributeTypeConverter.cs
- DispatcherObject.cs
- prompt.cs
- ScrollBarRenderer.cs
- ConfigsHelper.cs
- TraceEventCache.cs
- MetadataUtilsSmi.cs
- HtmlInputSubmit.cs
- AssertFilter.cs
- SchemaImporterExtension.cs
- CommandSet.cs
- LineGeometry.cs
- XhtmlBasicCommandAdapter.cs
- XsdDuration.cs
- ModelTreeManager.cs