2016-01-01 20 views
19

Tôi đang phát triển ứng dụng API ASP.NET Web API bằng mã Visual Studio trên Mac. Tôi tự sửa đổi Properties/launchSettings.json tập tin của tôi để thiết lập môi trường để Staging cho tất cả các cấu sử dụng biến ASPNET_ENV môi trường: enter image description hereLaunchSettings.json có được sử dụng khi chạy ứng dụng ASP.NET 5 từ dòng lệnh trên máy Mac không?

Tuy nhiên, khi tôi chạy dnx web trong thiết bị đầu cuối máy Mac để bắt đầu ứng dụng, tôi vẫn nhận được Production môi trường: enter image description here

Tôi có thể sử dụng launchSettings.json để chỉ định biến môi trường (và, do đó, các loại môi trường) nếu tôi sử dụng Visual Studio Code trên Mac? Hoặc là nó cụ thể cho Visual Studio đầy đủ?

ASP.NET 5 tài liệu suggestlaunchSettings.json có thể được sử dụng để chèn biến môi trường. Tuy nhiên, this SO discussion đề xuất chuyển chúng qua lệnh.

+2

Theo câu trả lời này, launchSettings.json chỉ được sử dụng bởi VS: http://stackoverflow.com/a/33374841/40925 9 –

Trả lời

12

LaunchSettings.json đúng là một khái niệm về VS. Trong trường hợp khác, bạn sẽ phải cấu hình các biến môi trường như các lệnh dưới đây:

Đối với tiêu chuẩn dòng lệnh chạy, sử dụng:

set ASPNET_ENV=Development 

dnx web 

Đối với PowerShell, sử dụng:

$env:ASPNET_ENV='Development' 

dnx web 

Phiên bản ngắn hơn:dnx web ASPNET_ENV=Development

+2

Câu trả lời ở trên là chính xác nhưng OP đã nói rằng anh ta đang sử dụng một mac.Để thiết lập môi trường phát triển trên máy mac, sử dụng các thông tin sau từ thiết bị đầu cuối: xuất ASPNET_ENV = Phát triển –

+0

Khi cố gắng đặt trong phần 'project.json'' lệnh', bạn sẽ nhận được thông tin như sau: '" lệnh ": {" web ":" Microsoft.AspNet.Server.Kestrel --config hosting.Development.json --ASPNET_ENV Phát triển "}'. Đúng? – superjos

+2

Biến môi trường 'ASPNET_ENV' đã lỗi thời và đã được thay thế bằng 'ASPNETCORE_ENVIRONMENT' (.NET Core RC2) –

0

Thêm vào câu trả lời @Chrysalis, bạn cũng có thể tránh "rối tung" với môi trường hiện tại bằng cách truyền các biến cần thiết trên dòng lệnh.

Bên project.json tập tin, nói rằng bạn có một lệnh web-dev cụ thể đối với môi trường phát triển:

"commands": { 
    "web-dev": "Microsoft.AspNet.Server.Kestrel 
    --ASPNET_ENV Development --Hosting:Environment Development 
    --config hosting.Development.json", 
}, 

nơi bạn có thể xem như thế nào cả ASPNET_ENV, Hosting:Environment được thiết lập, cũng như cách gọi một cấu hình cụ thể hosting.json.
LƯU Ý: lệnh được chia thành nhiều dòng chỉ để dễ đọc, hãy tham gia lại trước khi dán thực sự vào tệp JSON.

5

Trên máy Mac, sử dụng Terminal, gõ:

export ASPNETCORE_ENVIRONMENT=Development && dotnet run 

Yêu cầu:

+1

Hoặc trong Windows thiết lập ASPNETCORE_ENVIRONMENT = Phát triển && dotnet run -> công việc này cho tôi –

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