Truy cập giá trị khóa từ Web.config trong ASP.NET View-MVC3 ASP.NET


187

Làm cách nào để tôi truy cập một giá trị khóa từ web.config trong chế độ xem Dao cạo của tôi.

Đây là trong web.configcấp độ gốc của Dự án Web.

 <appSettings>
   <add key="myKey" value="MyValue"/>
</appSettings>

Tôi muốn sử dụng phím trong chế độ xem Dao cạo của mình.

Cảm ơn bạn.


10
@sathish Kumar: Tôi nghĩ rằng nó hơi khác một chút về MVC, vì vậy tôi đã phải hỏi ở đây, vì vậy đây là câu hỏi tồi tệ nhất mà bạn đã bình chọn. Hãy nhớ rằng bạn đã bắt đầu sự nghiệp của mình như một người bắt đầu, hãy lịch sự và tôn trọng người khác. Tôi không thể tìm thấy loại câu hỏi này trong tìm kiếm google .. Dao cạo là mới ..
Hari Gillala

1
Xin lỗi về điều đó. Mỗi câu hỏi thường gặp về stackoverflow tôi đã làm. Đối với câu hỏi này tôi đã có nhiều kết quả từ google. Nếu tôi làm điều gì sai một lần nữa xin lỗi.
sathishkumar

Câu trả lời:


243
@System.Configuration.ConfigurationManager.AppSettings["myKey"]

Hãy xem câu trả lời của Peter, vì trong phần này, bạn phải thêm Trình quản lý cấu hình tham chiếu
sensei

241

Phương pháp ưa thích thực sự là:

@System.Web.Configuration.WebConfigurationManager.AppSettings["myKey"]

Nó cũng không cần tham chiếu đến cấu hình Trình quản lý cấu hình, nó đã có trong System.Web.


4
Sự khác biệt giữa câu trả lời của @ Anwar và của bạn là gì? Bên cạnh việc đặt tên;)
Nate-Wilkins

21
System.Configuration có thể cần được tham chiếu riêng nếu nó không được sử dụng ở nơi nào khác trong dự án của bạn, nhưng System.Web đã được tham chiếu trong một dự án MVC.
Peter J

12

Đây là một ví dụ trong thế giới thực với việc sử dụng các tài sản không được thu nhỏ so với thu nhỏ trong bố cục của bạn.

Web.Config

<appSettings>

   <add key="Environment" value="Dev" />

 </appSettings>

Mẫu dao cạo - sử dụng var ở trên như thế này:

@if (System.Configuration.ConfigurationManager.AppSettings["Environment"] == "Dev")
{    
    <link type="text/css" rel="stylesheet" href="@Url.Content("~/Content/styles/theme.css" )">    

}else{        

   <link type="text/css" rel="stylesheet" href="@Url.Content("~/Content/styles/blue_theme.min.css" )">    

}

5
Ngay cả khi nó tốt với các ví dụ thực tế, sử dụng thu nhỏ theo cách đó với .net MVC là một điều đáng xấu hổ. Có một cái nhìn tại bundling asp.net/mvc/overview/performance/bundling-and-minification
Crypth

1

CHO MVC

- MÃ WEB.CONFIG TRONG THIẾT LẬP ỨNG DỤNG - <add key="PhaseLevel" value="1" />

- TRÊN XEM, giả sử bạn muốn hiển thị hoặc ẩn thứ gì đó dựa trên giá trị web.config--

- VIẾT NÀY TRÊN TRANG CỦA BẠN-- @{ var phase = System.Configuration.ConfigurationManager.AppSettings["PhaseLevel"].ToString(); }

- SỬ DỤNG TRÊN GIÁ TRỊ Ở ĐÂU BẠN MUỐN HIỂN THỊ HOẶC Ẩn.

@if (phase != "1") { @Html.Partial("~/Views/Shared/_LeftSideBarPartial.cshtml") }

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.