2012-05-28 3 views
1

Я хочу загрузить мои настройки приложения MVC 3 в память для лучшей производительности.Доступ к переменным global.asa.cs в контроллерах

До сих пор я могу назначить их в global.asa.cs, ​​но я не могу получить доступ к переменным в любом контроллере. Любая идея почему?

Global.asa.cs Код

public class MvcApplication : System.Web.HttpApplication 
{ 
    public static string DBUserName = Properties.Settings.Default.DBUserName; 
    public static string DBPassword = Properties.Settings.Default.DBPassword; 

код HomeController:

public class HomeController : Controller 
    { 


     public ActionResult Index() 
     { 
      ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application."; 
      _Authenticate(DBUserName , DBPassword); 

ответ

3

Вы должны получить доступ к ним, указав имя класса, в котором они объявлены:

_Authenticate(MvcApplication.DBUserName, MvcApplication.DBPassword); 

MvcApplication - это имя класса, в котором объявляются два fields.

Для этой работы вам необходимо объявить 2 поля как статические:

public static string DBUserName = Properties.Settings.Default.DBUserName; 
public static string DBPassword = Properties.Settings.Default.DBPassword; 
+0

Я получаю следующее сообщение об ошибке: Ссылка на объект требуется для нестатическая поля, метода или свойства – MataHari

+0

Ах извините, вам нужно объявить эти поля статическими. Я уточню свой ответ. –

+0

YOU DA MAN ....... – MataHari

Смежные вопросы