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
- OperationExecutionFault.cs
- QueryTaskGroupState.cs
- WebPartConnectionCollection.cs
- DataViewManagerListItemTypeDescriptor.cs
- DecoderReplacementFallback.cs
- ApplicationSecurityManager.cs
- ObjectReferenceStack.cs
- GridViewColumnCollection.cs
- PopupRootAutomationPeer.cs
- HTMLTextWriter.cs
- CommandManager.cs
- SelectionEditor.cs
- EdmComplexPropertyAttribute.cs
- ToolTipService.cs
- AssociationSet.cs
- NestPullup.cs
- ToolStripComboBox.cs
- Rotation3DKeyFrameCollection.cs
- TransactionTable.cs
- SimpleFieldTemplateUserControl.cs
- MinimizableAttributeTypeConverter.cs
- InheritanceContextHelper.cs
- NoResizeSelectionBorderGlyph.cs
- RoleGroupCollection.cs
- LoadMessageLogger.cs
- BrowserCapabilitiesCompiler.cs
- InheritanceAttribute.cs
- JavaScriptSerializer.cs
- DataColumnSelectionConverter.cs
- HttpChannelHelper.cs
- Exception.cs
- querybuilder.cs
- dataobject.cs
- SwitchLevelAttribute.cs
- OleDbStruct.cs
- ImageBrush.cs
- RelationshipEndMember.cs
- SecurityTokenProvider.cs
- XmlDataImplementation.cs
- QueryGenerator.cs
- mda.cs
- Pointer.cs
- RectangleGeometry.cs
- ImportCatalogPart.cs
- UIElement.cs
- ServiceDescriptionReflector.cs
- ImageMap.cs
- UnionExpr.cs
- EntityDataSourceDesigner.cs
- nulltextcontainer.cs
- SettingsPropertyValueCollection.cs
- ZipFileInfoCollection.cs
- RecordsAffectedEventArgs.cs
- __Error.cs
- MemoryRecordBuffer.cs
- EventProviderWriter.cs
- TextTabProperties.cs
- RotationValidation.cs
- PartitionResolver.cs
- ExceptionCollection.cs
- Page.cs
- HwndTarget.cs
- DATA_BLOB.cs
- MeshGeometry3D.cs
- SimpleExpression.cs
- AutomationProperties.cs
- TracingConnectionInitiator.cs
- TransformPattern.cs
- PageContentAsyncResult.cs
- SaveFileDialog.cs
- ListViewInsertedEventArgs.cs
- FirstMatchCodeGroup.cs
- GraphicsState.cs
- UserPersonalizationStateInfo.cs
- NullReferenceException.cs
- SaveFileDialog.cs
- BrowserCapabilitiesCodeGenerator.cs
- ContainerActivationHelper.cs
- WindowsRichEdit.cs
- BindingsCollection.cs
- DeferredReference.cs
- RegexInterpreter.cs
- AttributeData.cs
- ActivityExecutorSurrogate.cs
- DataServiceKeyAttribute.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs
- EventMap.cs
- EntityDescriptor.cs
- TextEffect.cs
- SerializationStore.cs
- SqlDataSourceView.cs
- MgmtConfigurationRecord.cs
- UITypeEditors.cs
- XmlNode.cs
- ToolStripDesigner.cs
- PolyQuadraticBezierSegment.cs
- MatrixTransform.cs
- CultureData.cs
- AccessViolationException.cs
- LogicalTreeHelper.cs