У меня вопрос относительно статических членов и функций нестатических классов.
В моем классе есть статический член, который я использую для аутентификации. Обычно я вызываю статическую функцию из своего веб-приложения, а затем внутри вызываю статическую функцию, которая присваивает значение этому статическому члену. Теперь мой вопрос: будет ли каждый вызов статической функции из моего веб-приложения создавать новую ссылку на объект и присваивать новое значение статическому члену.
Итак, в основном у меня есть это:
public class ClassA
{
private static int UserId;
private static AssignIdToUser(string token)
{
UserId = <int value depending on result of db query>;
}
public SendMessage(string token, string message, string toaddress)
{
AssignIdToUser(token);
Message msg = new Message(); //This is just a sample of a class that is similar to the one I use
msg.Message = message;
msg.UserId = UserId;
msg.ToAddress = toaddress;
//add class to db and save
}
}
Затем в моем веб-приложении я могу сделать:
ClassA.SendMessage("userstoken", "This is a message", "0123456789");
Теперь, если два пользователя входят в систему одновременно и функция вызывается одновременно, будет ли член UserId иметь правильный значение для каждого пользователя?
В основном это экземпляр объекта, созданный для каждого запроса, или используется один и тот же объект?