Don't invoke Path.GetFullPath when calculating MvcRazorOutputPath

Add an option that allows specifying the command to invoke
This commit is contained in:
Pranav K 2017-01-10 10:33:44 -08:00
parent 5bf4ec4110
commit 1ed838fec9
3 changed files with 11 additions and 4 deletions

View File

@ -2,7 +2,7 @@
<PropertyGroup>
<_MvcRazorOutputPath Condition="'$(MvcRazorOutputPath)'!=''">$([MSBuild]::EnsureTrailingSlash('$(MvcRazorOutputPath)'))</_MvcRazorOutputPath>
<_MvcRazorOutputPath Condition="'$(_MvcRazorOutputPath)'==''">$(IntermediateOutputPath)</_MvcRazorOutputPath>
<_MvcRazorOutputFullPath>$([System.IO.Path]::Combine($([System.IO.Path]::GetFullPath('$(_MvcRazorOutputPath)')), '$(MSBuildProjectName).PrecompiledViews.dll'))</_MvcRazorOutputFullPath>
<_MvcRazorOutputFullPath>$([System.IO.Path]::Combine($(_MvcRazorOutputPath), '$(MSBuildProjectName).PrecompiledViews.dll'))</_MvcRazorOutputFullPath>
<_MvcRazorResponseFilePath>$(IntermediateOutputPath)microsoft.aspnetcore.mvc.razor.viewcompilation.rsp</_MvcRazorResponseFilePath>
<MvcRazorContentRoot Condition="'$(MvcRazorContentRoot)'==''">$(MSBuildProjectDirectory)</MvcRazorContentRoot>

View File

@ -1,5 +1,9 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildThisFileDirectory)..\common.targets" />
<PropertyGroup>
<MvcRazorRunCommand Condition="'$(MvcRazorRunCommand)'==''">$(OutputPath)$(MSBuildThisFileName).exe</MvcRazorRunCommand>
</PropertyGroup>
<Target
Name="MvcRazorPrecompile"
Inputs="$(MSBuildThisFileFullPath);@(_MvcRazorContentFiles);@(IntermediateAssembly);@(DocFileItem);@(_DebugSymbolsIntermediatePath);@(ReferencePath);$(MSBuildAllProjects);"
@ -12,7 +16,7 @@
<Destination>$(OutputPath)$(MSBuildThisFileName).exe.config</Destination>
</FilesToCopy>
<FilesToCopy Include="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).exe">
<Destination>$(OutputPath)$(MSBuildThisFileName).exe</Destination>
<Destination>$(MvcRazorRunCommand)</Destination>
</FilesToCopy>
</ItemGroup>
@ -25,7 +29,7 @@
Importance="Low" />
<Exec
Command="$(OutputPath)$(MSBuildThisFileName).exe @&quot;$(_MvcRazorResponseFilePath)&quot;"
Command="$(MvcRazorRunCommand) @&quot;$(_MvcRazorResponseFilePath)&quot;"
WorkingDirectory="$(MSBuildProjectDirectory)"/>
<Message

View File

@ -1,5 +1,8 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildThisFileDirectory)..\common.targets" />
<PropertyGroup>
<MvcRazorRunCommand>dotnet</MvcRazorRunCommand>
</PropertyGroup>
<Target
Name="MvcRazorPrecompile"
Inputs="$(MSBuildThisFileFullPath);@(_MvcRazorContentFiles);@(IntermediateAssembly);@(DocFileItem);@(_DebugSymbolsIntermediatePath);@(ReferencePath);$(MSBuildAllProjects)"
@ -19,7 +22,7 @@
Importance="Low" />
<Exec
Command="dotnet exec $(ExecArgs)"
Command="$(MvcRazorRunCommand) exec $(ExecArgs)"
WorkingDirectory="$(MSBuildProjectDirectory)" />
<Message