2014-04-12 16 views
5

Làm cách nào để sử dụng cờ "Biên dịch trước khi xuất bản" trên dự án VS2013 x64? Không có vấn đề gì tôi làm, nó không xuất bản bởi vì nó nhấn mạnh vào việc sử dụng ASPNETCOMPILER x86.Định cấu hình Visual Studio 2013 để cho phép ASPNETCOMPILER biên dịch trước bằng cách sử dụng trình biên dịch x64

Tôi nghĩ mình đã từng làm việc này trong VS2012, nhưng sau khi nâng cấp lên VS2013 thì nó không còn hoạt động nữa.

Tôi nhớ lại bản sửa lỗi liên quan đến việc thay đổi tệp văn bản có liên quan đến MSBuild nhưng tôi thực sự không biết nhiều về nó vì vậy nó hơi mơ hồ.

Bất kỳ trợ giúp nào được đánh giá cao. Cảm ơn!

Trả lời

9

này có vẻ là một lỗi trong Visual Studio 2013.

Microsoft Connect - Precompile error when using X64 platform

Cách giải quyết liệt kê ở đó hoạt động và là thêm xml sau trong thẻ xml dự án/PropertyGroup đến cấu hình công bố (nằm trong thư mục Properties \ PublishProfiles của dự án của bạn).

<AspnetCompilerPath>C:\Windows\Microsoft.NET\Framework64\v4.0.30319</AspnetCompilerPath> 

tôi đã nhận được build này lỗi trước khi áp dụng cách giải quyết trên: "Không thể tải tập tin hoặc lắp ráp '****' hoặc một trong các phụ thuộc của nó Một cố gắng đã được thực hiện để tải một chương trình với một không chính xác. định dạng." - ASPNETCOMPILER

+0

Nó chỉ hoạt động. Cảm ơn bạn! –

+0

Ditto. Kể từ 2014-05-01, sự cố Kết nối được liệt kê là "Sẽ không khắc phục". Tôi không biết tại sao không; nó khiến tôi mất nhiều thời gian để theo đuổi vấn đề và sửa chữa có vẻ là một thay đổi đơn giản cho phiên bản tiếp theo ...: - \ –

2

Tuy nhiên một vấn đề trong Visual Studio 2015 Update 3 ...

Fix: Mở tập tin csproj của dự án trong trình soạn thảo văn bản yêu thích của bạn.

Xác định vị trí:

<MvcBuildViews>true</MvcBuildViews> 

Thêm dòng sau dưới nó:

<AspNetToolPath Condition=" '$(Platform)' == 'x64'">$(windir)\Microsoft.NET\Framework64\v4.0.30319</AspNetToolPath> 

Xác định vị trí:

<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'" > 
    <AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" /> 
</Target> 

Sửa đổi dòng AspNetCompiler như sau:

<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" ToolPath="$(AspNetToolPath)" /> 
+0

Vẫn còn vấn đề trong VS 2017 – Jay

Các vấn đề liên quan