Сегодня я работаю над функцией для репетиторов отправлять сообщения в компании. Грубо говоря, когда репетитор заходит первый раз, сообщения нет, а потом сообщение добавляется и модифицируется. взаимодействие CS и регистратуры, и я реализую его через Handler.
Поскольку вы хотите изменить его сообщение, вам необходимо изменить его на основе его идентификатора. Однако обычно проекты компании сохраняют информацию о пользователе после входа в сеанс, поэтому нет никаких сомнений в том, что идентификатор необходимо получить на основе идентификатора; .я всегда сначала
Я не могу получить идентификатор, то есть я не могу получить нужный идентификатор в файле cs. Я получаю его следующим образом: string uid = HttpContext.Current.Session[UserSessionPolicy.SESSION_USERID] as string;
Объясните этот «UserSessionPolicy.SESSION_USERID», где «UserSessionPolicy» — это класс, специально используемый для сохранения информации о пользователе. Конечно, он также сохраняет идентификатор пользователя, который является «SESSION_USERID» в коде. Когда я нажал кнопку отправки, появилось сообщение об ошибке типа «Объект не был связан с экземпляром». Все наверняка подумали, что он не был создан? Правильно, он просто не создан, но как его создать в Handler?
Что касается сеанса, все знают, что сеанс — это область, используемая для сохранения состояния, поэтому в Handler необходимо ссылаться на пространство имен. Я уже сталкивался с этой проблемой.
У меня была такая головная боль, я решил ее сегодня. Сегодня я запишу здесь свою мораль и поделюсь ею со всеми. Надеюсь, что в будущем пользователи сети окажут небольшую помощь, когда столкнутся с такими же проблемами.
В моем примере репетитору необходимо использовать идентификатор в своем сообщении. Можно ли это сделать для других пользователей, которым необходимо использовать идентификатор? Вообще говоря, класс, обрабатывающий данные через Handler, должен ссылаться на имя «using System.Web.SessionState;».
пространство, то этот класс наследует «IReadOnlySessionState». Например:
код
<%@ WebHandler Language="C#" Class="TeacherInfoHandler" %>с использованием системы;с использованием System.Web;с использованием com.rrs.baby.business.Information;с использованием com.rrs.core;с использованием System.Web.Script.Serialization ;using System.Web.SessionState;//Используйте идентификатор для сохранения в сеансе using System.Collections;публичный класс TeacherInfoHandler: IHttpHandler, IReadOnlySessionState{ //Тело метода}
В этом классе TeacherInfoHandler вы можете использовать значение, сохраненное сеансом.