8

Tôi có dự án web Visual Studio 2012 MVC mà tôi đang sử dụng IIS Express làm máy chủ web trong môi trường phát triển. Theo mặc định, IIS Express lưu trữ tất cả các tùy chọn cấu hình của nó trong Documents \ IISExpress \ config \ applicationhost.config. Tôi muốn cô lập cấu hình trang web của ứng dụng của tôi thành một tệp cấu hình IIS Express độc lập và lưu trữ nó trong điều khiển nguồn cùng với tất cả các tài sản dự án khác. Điều này là dễ dàng, đủ để làm, tuy nhiên tôi đang đấu tranh với làm thế nào để làm cho Visual Studio nói với IISExpress để sử dụng tập tin cấu hình này khi tôi bắt đầu gỡ lỗi trong Visual Studio. Tôi có thể tự khởi chạy IISExpress và truyền nó một tập tin cấu hình thông qua/config: tham số và hoạt động tốt, tuy nhiên tôi không thấy bất kỳ cách nào để truyền các tham số dòng lệnh tới IIS Express khi Visual Studio khởi chạy IIS Express. Tôi đã poked xung quanh trong .csproj tìm kiếm một lĩnh vực mà tôi có thể cư trú liên quan đến các tham số dòng lệnh IIS Express và đã tìm thấy không có gì.IIS Express chỉ định tệp cấu hình tại biên dịch/runtime & Visual Studio Integration

Tôi cũng đã thử cài đặt 'Bắt ​​đầu hành động' của dự án web thành 'Khởi chạy chương trình bên ngoài' và có chương trình này là IIS Express với các tham số dòng lệnh được chỉ định của tôi và đặt phần 'Máy chủ' thành 'Sử dụng máy chủ web tùy chỉnh ', tuy nhiên điều này luôn dẫn đến thông báo' Không thể bắt đầu gỡ lỗi trên máy chủ web '. Dường như khi được định cấu hình theo cách này, Visual Studio đang cố đính kèm vào quy trình máy chủ lưu trữ web trước khi thực thi lệnh được chỉ định trong 'Bắt ​​đầu chương trình bên ngoài'

Nếu tôi cố gắng chạy IISExpress dưới dạng 'Sự kiện xây dựng bài đăng', nó thực sự chạy, nhưng điều này chặn Visual Studio thực sự tiếp tục với việc thực thi mã của tôi trong debug (tôi đoán nó đang chờ IIS Express thoát - điều này sẽ đánh bại toàn bộ mục đích).

Tôi đang thiếu gì? Làm thế nào để tích hợp IIS Express với một tệp cấu hình tùy chỉnh trong một dự án Visual Studio?

Trả lời

0

Dường như bạn đã thử tất cả các lựa chọn thay thế. Bạn đã cân nhắc thêm sự kiện sau xây dựng chưa? Trong thuộc tính dự án của bạn, tab "Tạo sự kiện", thêm sự kiện để ghi đè tệp mặc định applicationhost.config được IISExpress sử dụng. Ví dụ:

copy /Y $(ProjectPath)\applicationhost.config %25homepath%25\Documents\IISExpress\config\applicationhost.config 

Note:% 25 là dãy thoát cho%.

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