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
- Composition.cs
- ObjectTypeMapping.cs
- ExpressionValueEditor.cs
- ThicknessAnimation.cs
- DropShadowBitmapEffect.cs
- ZipIOExtraField.cs
- ComponentDesigner.cs
- WhitespaceRuleReader.cs
- RectConverter.cs
- DataViewManager.cs
- AssertFilter.cs
- EdmEntityTypeAttribute.cs
- ModifierKeysConverter.cs
- EntityCollection.cs
- CollectionViewSource.cs
- LocalValueEnumerator.cs
- EditorAttribute.cs
- X509Utils.cs
- StreamBodyWriter.cs
- Clause.cs
- AnnotationResourceChangedEventArgs.cs
- WindowsGrip.cs
- CharacterMetrics.cs
- ProfilePropertySettings.cs
- SqlProfileProvider.cs
- TreeViewImageGenerator.cs
- ConfigurationException.cs
- QueryCacheManager.cs
- SoapIgnoreAttribute.cs
- XamlReaderHelper.cs
- DeviceFilterEditorDialog.cs
- TransformProviderWrapper.cs
- BufferModesCollection.cs
- ScriptingWebServicesSectionGroup.cs
- _HTTPDateParse.cs
- HtmlInputButton.cs
- IDispatchConstantAttribute.cs
- InvalidEnumArgumentException.cs
- DataBinder.cs
- UpdateProgress.cs
- RegexCapture.cs
- TrustSection.cs
- CallSite.cs
- CheckBoxField.cs
- AutoGeneratedField.cs
- RootBrowserWindow.cs
- TreeViewCancelEvent.cs
- Partitioner.cs
- TextFormatter.cs
- Header.cs
- Menu.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- CommandValueSerializer.cs
- SymbolType.cs
- Queue.cs
- LinkLabelLinkClickedEvent.cs
- CuspData.cs
- SecurityContext.cs
- FacetDescriptionElement.cs
- PeekCompletedEventArgs.cs
- StylusEditingBehavior.cs
- Int64AnimationUsingKeyFrames.cs
- ToolStripProgressBar.cs
- SendDesigner.xaml.cs
- XmlSignificantWhitespace.cs
- ServiceBusyException.cs
- Matrix.cs
- ErrorHandlingAcceptor.cs
- XmlSerializableReader.cs
- EncoderNLS.cs
- SmiEventSink.cs
- SqlUtils.cs
- CodeSubDirectory.cs
- RealProxy.cs
- BinaryFormatterWriter.cs
- InstanceHandleConflictException.cs
- EUCJPEncoding.cs
- OciEnlistContext.cs
- DataGrid.cs
- WaveHeader.cs
- XPathSelfQuery.cs
- FixedSOMTableRow.cs
- DiscoveryEndpointElement.cs
- SqlAggregateChecker.cs
- DocumentSequenceHighlightLayer.cs
- LinqDataSourceContextData.cs
- StringCollectionEditor.cs
- NamedPipeConnectionPoolSettings.cs
- SqlBinder.cs
- AutoGeneratedFieldProperties.cs
- WebBrowserBase.cs
- ObjectManager.cs
- ScriptMethodAttribute.cs
- _ChunkParse.cs
- QfeChecker.cs
- WorkflowOperationBehavior.cs
- GroupBox.cs
- ImportOptions.cs
- BCLDebug.cs
- KeyInterop.cs