| File: BlazorReadSatelliteAssemblyFile.cs | Web Access |
| Project: src\sdk\src\BlazorWasmSdk\Tasks\Microsoft.NET.Sdk.BlazorWebAssembly.Tasks.csproj (Microsoft.NET.Sdk.BlazorWebAssembly.Tasks) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. #nullable disable using Microsoft.Build.Framework; using Microsoft.Build.Utilities; namespace Microsoft.NET.Sdk.BlazorWebAssembly { public class BlazorReadSatelliteAssemblyFile : Task { [Output] public ITaskItem[] SatelliteAssembly { get; set; } [Required] public ITaskItem ReadFile { get; set; } public override bool Execute() { var document = XDocument.Load(ReadFile.ItemSpec); SatelliteAssembly = document.Root .Elements() .Select(e => { // <Assembly Name="..." Culture="..." DestinationSubDirectory="..." /> var taskItem = new TaskItem(e.Attribute("Name").Value); taskItem.SetMetadata("Culture", e.Attribute("Culture").Value); taskItem.SetMetadata("DestinationSubDirectory", e.Attribute("DestinationSubDirectory").Value); return taskItem; }).ToArray(); return true; } } }