2016-06-29 11 views
0

Как объявить глобальные переменные в приложении MVC без использования статического?Есть ли другой способ объявить глобальные переменные без использования статического ключевого слова в MVC?

В настоящее время я следую статическому подходу, и это вызывает проблемы, когда приложение регистрируется от разных пользователей одновременно.

+2

Что вы пытаетесь сделать? В веб-среде обычно это не очень хорошо. Вы можете использовать промежуточное программное обеспечение, но это зависит от того, чего вы пытаетесь достичь. – hbulens

+1

глобальные переменные обычно не являются хорошей практикой. –

+3

Глобальные переменные вызовут проблемы с параллельными пользователями независимо от того, используете ли вы 'static' или нет. В чем проблема, которую вы пытаетесь решить, используя глобальные переменные? –

ответ

1

Если вы хотите сделать их глобальными для пользователя, я бы предложил использовать контекст Session, чтобы сохранить переменные. Это не на уровне пользователя, так как пользователь может входить в систему несколько раз, но обычно это лучше подходит для моего опыта.

я обычно что-то вроде этого:

public string Prop 
{ 
    get 
    { 
     return (string)Session["Prop"]; 
    } 
    set 
    { 
     Session["Prop"] = value; 
    } 
} 

Это сделает доступ к собственности очень легко и последовательны.

+0

если мы хотим использовать список в нем? Он подходит? –

+0

Да, для чего я знаю, любой тип данных разрешен. –

+0

но что делать, если данные большие? –

0

Аналогично сеансу вы также можете использовать объект приложения. Также вы можете хранить переменные в кеше.