Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / XamlBuildTask / Microsoft / Build / Tasks / Xaml / CompilationPass2Task.cs / 1305376 / CompilationPass2Task.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace Microsoft.Build.Tasks.Xaml { using System; using System.Collections.Generic; using Microsoft.Build.Framework; using Microsoft.Build.Utilities; using System.Reflection; using System.Runtime; [Fx.Tag.XamlVisible(true)] public class CompilationPass2Task : Task { public CompilationPass2Task() { } [Fx.Tag.KnownXamlExternal] public ITaskItem[] ApplicationMarkup { get; set; } public string AssemblyName { get; set; } [Fx.Tag.KnownXamlExternal] public ITaskItem[] References { get; set; } public string LocalAssemblyReference { get; set; } public string RootNamespace { get; set; } public string BuildTaskPath { get; set; } public override bool Execute() { AppDomain appDomain = null; try { appDomain = XamlBuildTaskServices.CreateAppDomain("CompilationPass2AppDomain_" + Guid.NewGuid(), BuildTaskPath); CompilationPass2TaskInternal wrapper = (CompilationPass2TaskInternal)appDomain.CreateInstanceAndUnwrap( Assembly.GetExecutingAssembly().FullName, typeof(CompilationPass2TaskInternal).FullName); PopulateBuildArtifacts(wrapper); bool ret = wrapper.Execute(); if (!ret) { foreach (LogData logData in wrapper.LogData) { XamlBuildTaskServices.LogException( this, logData.Message, logData.FileName, logData.LineNumber, logData.LinePosition); } } return ret; } catch (Exception e) { if (Fx.IsFatal(e)) { throw; } XamlBuildTaskServices.LogException(this, e.Message); return false; } finally { if (appDomain != null) { AppDomain.Unload(appDomain); } } } void PopulateBuildArtifacts(CompilationPass2TaskInternal wrapper) { IListapplicationMarkup = new List (this.ApplicationMarkup.Length); foreach (ITaskItem taskItem in this.ApplicationMarkup) { applicationMarkup.Add(taskItem.ItemSpec); } wrapper.ApplicationMarkup = applicationMarkup; IList references = new List (this.References.Length); foreach (ITaskItem reference in this.References) { references.Add(reference.ItemSpec); } wrapper.References = references; wrapper.LocalAssemblyReference = this.LocalAssemblyReference; wrapper.AssemblyName = this.AssemblyName; wrapper.RootNamespace = this.RootNamespace; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace Microsoft.Build.Tasks.Xaml { using System; using System.Collections.Generic; using Microsoft.Build.Framework; using Microsoft.Build.Utilities; using System.Reflection; using System.Runtime; [Fx.Tag.XamlVisible(true)] public class CompilationPass2Task : Task { public CompilationPass2Task() { } [Fx.Tag.KnownXamlExternal] public ITaskItem[] ApplicationMarkup { get; set; } public string AssemblyName { get; set; } [Fx.Tag.KnownXamlExternal] public ITaskItem[] References { get; set; } public string LocalAssemblyReference { get; set; } public string RootNamespace { get; set; } public string BuildTaskPath { get; set; } public override bool Execute() { AppDomain appDomain = null; try { appDomain = XamlBuildTaskServices.CreateAppDomain("CompilationPass2AppDomain_" + Guid.NewGuid(), BuildTaskPath); CompilationPass2TaskInternal wrapper = (CompilationPass2TaskInternal)appDomain.CreateInstanceAndUnwrap( Assembly.GetExecutingAssembly().FullName, typeof(CompilationPass2TaskInternal).FullName); PopulateBuildArtifacts(wrapper); bool ret = wrapper.Execute(); if (!ret) { foreach (LogData logData in wrapper.LogData) { XamlBuildTaskServices.LogException( this, logData.Message, logData.FileName, logData.LineNumber, logData.LinePosition); } } return ret; } catch (Exception e) { if (Fx.IsFatal(e)) { throw; } XamlBuildTaskServices.LogException(this, e.Message); return false; } finally { if (appDomain != null) { AppDomain.Unload(appDomain); } } } void PopulateBuildArtifacts(CompilationPass2TaskInternal wrapper) { IList applicationMarkup = new List (this.ApplicationMarkup.Length); foreach (ITaskItem taskItem in this.ApplicationMarkup) { applicationMarkup.Add(taskItem.ItemSpec); } wrapper.ApplicationMarkup = applicationMarkup; IList references = new List (this.References.Length); foreach (ITaskItem reference in this.References) { references.Add(reference.ItemSpec); } wrapper.References = references; wrapper.LocalAssemblyReference = this.LocalAssemblyReference; wrapper.AssemblyName = this.AssemblyName; wrapper.RootNamespace = this.RootNamespace; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MimeFormatter.cs
- ApplicationFileCodeDomTreeGenerator.cs
- diagnosticsswitches.cs
- HtmlTableRow.cs
- SingleAnimationUsingKeyFrames.cs
- Pen.cs
- SafeFindHandle.cs
- RuntimeTrackingProfile.cs
- Byte.cs
- DefaultSerializationProviderAttribute.cs
- EnvelopedPkcs7.cs
- IgnoreSection.cs
- __Filters.cs
- ResXDataNode.cs
- Stream.cs
- SessionStateContainer.cs
- FileChangesMonitor.cs
- CharKeyFrameCollection.cs
- HeaderCollection.cs
- HorizontalAlignConverter.cs
- ProxyFragment.cs
- FieldAccessException.cs
- Image.cs
- ReadOnlyPropertyMetadata.cs
- DataGridViewCellStyleEditor.cs
- EntityDataSourceWizardForm.cs
- ToolBar.cs
- CalendarAutomationPeer.cs
- SchemaHelper.cs
- DocumentPage.cs
- ParameterCollection.cs
- BamlTreeMap.cs
- ExcCanonicalXml.cs
- WebDisplayNameAttribute.cs
- ContextMenuService.cs
- UnionCqlBlock.cs
- ProviderSettings.cs
- XPathDocumentBuilder.cs
- SystemMulticastIPAddressInformation.cs
- DbConnectionPool.cs
- FixedSOMPageElement.cs
- WebPartConnectionsConnectVerb.cs
- SettingsAttributes.cs
- FontFaceLayoutInfo.cs
- CompressionTracing.cs
- HttpResponse.cs
- ZipIOExtraFieldElement.cs
- SearchForVirtualItemEventArgs.cs
- FileSystemEventArgs.cs
- DataRowExtensions.cs
- SiteOfOriginPart.cs
- SharedPerformanceCounter.cs
- Input.cs
- AsyncStreamReader.cs
- ManagedWndProcTracker.cs
- xmlfixedPageInfo.cs
- GridItemCollection.cs
- TextPointerBase.cs
- ColorInterpolationModeValidation.cs
- TargetControlTypeCache.cs
- ConfigurationPropertyCollection.cs
- URLMembershipCondition.cs
- BrowserCapabilitiesCompiler.cs
- OpenTypeCommon.cs
- SqlInternalConnectionSmi.cs
- BatchServiceHost.cs
- COSERVERINFO.cs
- SortAction.cs
- HtmlGenericControl.cs
- Ray3DHitTestResult.cs
- WebSysDescriptionAttribute.cs
- ExtensionDataObject.cs
- ICspAsymmetricAlgorithm.cs
- ThicknessAnimationUsingKeyFrames.cs
- Crc32.cs
- ArraySegment.cs
- TypeToArgumentTypeConverter.cs
- TypeLoader.cs
- SecurityDescriptor.cs
- RequestCachingSection.cs
- GridView.cs
- SimpleFieldTemplateUserControl.cs
- LineServices.cs
- OracleCommandBuilder.cs
- SspiWrapper.cs
- HttpSocketManager.cs
- CodeRegionDirective.cs
- StylusPointProperty.cs
- SecurityDocument.cs
- ToolStripSystemRenderer.cs
- Shape.cs
- ResolveCriteriaApril2005.cs
- NumberFunctions.cs
- basenumberconverter.cs
- HttpConfigurationContext.cs
- Constants.cs
- NamedPipeChannelFactory.cs
- TextContainerChangedEventArgs.cs
- SoapMessage.cs
- DataSourceConverter.cs