2016-05-19 56 views
8

Tôi có một dự án RC2 Lõi ASP.NET, tôi đang cố gắng để xuất bản nó vào IIS và lệnh dotnet publish-iis LUÔN cho:DotNet publish-IIS không hoạt động

Asp.Net Core IIS Publisher 
Usage: dotnet publish-iis [arguments] [options] 
Arguments: 
    <PROJECT> The path to the project (project folder or project.json) being published. If empty the current directory is used. 
Options: 
    -h|--help     Show help information 
    --publish-folder|-p   The path to the publish output folder 
    -f|--framework <FRAMEWORK> Target framework of application being published 

Có thậm chí là một ví dụ về làm thế nào điều này hoạt động? Làm cách nào để chuyển các tham số? Nó không bao giờ hoạt động ... Các tham số

Trả lời

8

--publish-folder--framework là bắt buộc. Nếu bạn không cung cấp các thông số này thì công cụ sẽ hiển thị mức sử dụng.

Có nói rằng nó không thực sự được mong đợi để chạy công cụ này một mình. Những gì publish-iis làm là nó chỉ chỉnh sửa tệp web.config của một ứng dụng đã được xuất bản (hoặc tạo một web.config mới nếu không tồn tại) để IIS/IISExpress có thể tìm thấy ứng dụng để bắt đầu. Nói cách khác, bạn phải xuất bản ứng dụng của mình trước và sau đó xuất bản-iis chỉ cần massage một chút. Kết quả là việc sử dụng dự kiến ​​là cấu hình để nó chạy như một kịch bản postpublish:

"scripts": { 
    "postpublish": "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" 
} 

tôi đã mô tả các công cụ publish-iis chi tiết hơn trong này post on running Asp.NET Core apps with IIS

+0

Nhưng điều này không tạo ra 'web.config' trong wwwroot. Đây có phải là dự kiến ​​không? Tôi nghĩ web.config là cần thiết cả trong dự án gốc và trong wwwroot. – VSG24

+2

Điều này được mong đợi (https://github.com/aspnet/Announcements/issues/173). Vị trí mặc định cho tệp web.config hiện là phê duyệt của bạn chứ không phải wwwroot. Ngoài ra, tại sao có 2 tệp web.config sẽ hữu ích? – Pawel

+0

Tên không gây nhầm lẫn ở tất cả . Bằng cách viết tuyệt vời. Các tài liệu aspnet là tuyệt vời nhưng phần này đặc biệt không có ý nghĩa trong các tài liệu. – josullivan

6

Đối ASP.NET Lõi 1.1. Các phần chính trong project.json là:

"tools": { 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.1.0-preview4-final" 
    }, 

    "scripts": { 
    "postpublish": "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" 
    } 

Làm việc tuyệt vời cho tôi!

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