2012-06-05 9 views

Trả lời

10

Bạn có thể chuyển thuộc tính AllowedReferenceRelatedFileExtensions đến tòa nhà của mình. Giá trị của thuộc tính phải là danh sách các phần mở rộng tệp được phân tách bằng dấu chấm phẩy. Từ Microsoft.Common.targets:

<!-- 
These are the extensions that reference resolution will consider when looking for files related 
to resolved references. Add new extensions here if you want to add new file types to consider. 
--> 
<AllowedReferenceRelatedFileExtensions Condition=" '$(AllowedReferenceRelatedFileExtensions)' == '' "> 
    .pdb; 
    .xml 
</AllowedReferenceRelatedFileExtensions> 

Không có cách nào để thêm giá trị vào danh sách. Bạn chỉ có thể cung cấp toàn bộ danh sách, vì vậy hãy đảm bảo bạn bao gồm các giá trị mặc định, ví dụ:

MSBuild.exe MyProject.csproj /t:build "/p:AllowedReferenceRelatedFileExtensions=.pdb;.xml;.manifest" 
+1

Tôi thêm phần tử AllowedGroup vào phần tử Thuộc tính vào tập lệnh xây dựng của tôi và tệp .csproj và không thấy các tệp đang được sao chép (tôi có một bản dựng tự động chạy qua TFS). Điều này có giả định các tệp là đầu ra của một dự án (tức là thư mục bin) không? Nếu vậy, bạn có biết những gì tôi sẽ cần phải làm để có được xây dựng tự động của tôi để sao chép trên các tập tin mà không phải là kết quả đầu ra của một dự án? –

+0

@JM Có. MSBuild sẽ chỉ lấy các tệp nằm trong thư mục đầu ra obj cho dự án của bạn. Nếu tệp .manifest của bạn không có trong thư mục đầu ra, có thể bạn sẽ cần phải thêm mục tiêu sau khi xây dựng vào tệp .csproj của bạn. –