Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 IEnumerable的用途是什么<;IUserEventHandler>;Orchard.User模块中的UserEventHandler_Asp.net Mvc 3_Orchardcms - Fatal编程技术网

Asp.net mvc 3 IEnumerable的用途是什么<;IUserEventHandler>;Orchard.User模块中的UserEventHandler

Asp.net mvc 3 IEnumerable的用途是什么<;IUserEventHandler>;Orchard.User模块中的UserEventHandler,asp.net-mvc-3,orchardcms,Asp.net Mvc 3,Orchardcms,我想知道Orchard.User模块中定义的AccountController中的IEnumerable UserEventHandler有什么用途 [HttpPost] [SuppressMessage("Microsoft.Design", "CA1054:UriParametersShouldNotBeStrings", Justification = "Needs to take same parameter type as Controller

我想知道Orchard.User模块中定义的AccountController中的IEnumerable UserEventHandler有什么用途

 [HttpPost]
        [SuppressMessage("Microsoft.Design", "CA1054:UriParametersShouldNotBeStrings",
            Justification = "Needs to take same parameter type as Controller.Redirect()")]
        public ActionResult LogOn(string userNameOrEmail, string password, string returnUrl) {
            var user = ValidateLogOn(userNameOrEmail, password);
            if (!ModelState.IsValid) {
                var shape = _orchardServices.New.LogOn().Title(T("Log On").Text);
                return new ShapeResult(this, shape); 
            }

            _authenticationService.SignIn(user, false);
            foreach (var userEventHandler in _userEventHandlers) {
                userEventHandler.LoggedIn(user);
            }

            return this.RedirectLocal(returnUrl);
        }

它建议您可以传递一个包含IUserEventHandler的IEnumerable。当事件发生时,将按顺序调用这些函数

 foreach (var userEventHandler in _userEventHandlers) {
                userEventHandler.LoggedIn(user);
            }

我可以想象,您可能有多个订阅者需要关心某个用户是否已登录,这是一种干净的通知方式。

它建议您可以传递一个包含IUserEventHandler的IEnumerable。当事件发生时,将按顺序调用这些函数

 foreach (var userEventHandler in _userEventHandlers) {
                userEventHandler.LoggedIn(user);
            }

我可以想象,您可能有多个订阅者需要关注某个用户已登录,这是一种干净的通知方式。

谢谢@Chris,我想知道这种用户事件可以在这里调用吗?对不起,我的英语很差。我想说的是iSureEvEnthand的任何一个。如果你认为这是一个答案,你会很感激。很高兴为您提供帮助谢谢@Chris,我想知道这种用户活动可以在这里调用吗?对不起,我的英语很差。我想说的是iSureEvEnthand的任何一个。如果你认为这是一个答案,你会很感激。很乐意帮忙