microsoft / microsoft/powerplatform-vscode
Cannot build cdsproj if reference plugin project has dots (.) in .csproj name
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 277
- Forks
- 60
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 14
Description
I have added a plugin project reference to my .cdsproj named similar to below, which includes dots.
<ItemGroup>
<ProjectReference Include="..\Plugins\LS.Dataverse.Plugins.csproj" />
</ItemGroup>
When building the project I get the following error:
....nuget\packages\microsoft.powerapps.msbuild.solution\1.34.3\build\Microsoft.PowerApps.MSBuild.Solution.targets(137,5): error : Cannot find required file '...\SolutionName\obj\Debug\Metadata\PluginAssemblies\LSDataversePlugins-D7213E1E-F3E
B-4579-A6B9-6C9D433DD7EE\WHSDataversePlugins.dll'. [...\SolutionName\SolutionProjName.cdsproj]
Checking the metadata folder referenced in the error the plugin assembly found there is LS.Dataverse.Plugins-D7213E1E-F3E
B-4579-A6B9-6C9D433DD7EE\WHSDataversePlugins.dll (ie, with dots). If I remove dots from the cdsproj name it builds fine.
As a workaround I can revert to using a mapping file instead of adding plugin project as a reference but trying to keep builds as efficient as possible.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the build using the shown ProjectReference in the .cdsproj, then inspect Microsoft.PowerApps.MSBuild.Solution.targets around line 137 and the generated obj\Debug\Metadata\PluginAssemblies paths. Done means a referenced .csproj whose name contains dots builds successfully without requiring the mapping-file workaround.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100