我正在使用Microsoft.NetCore.App v1.1.0(2016年11月16日)并构建了一个标准的MVC Web App,我根据Microsoft Docs提供的建议为Microsoft和Google添加了社交登录.
在第一次使用Google(或Microsoft)登录时,它按预期工作 - 即在我的Google帐户验证后,我的WebApp向我提供了一个注册网页,要求我提供与我的Google帐户关联的电子邮件地址,然后我登录我的WebApp.不幸的是,第二次登录时也会发生同样的情况,因此很明显注册失败,因为电子邮件地址已经在我的AspNetUsers表中.
我在AccountController :: ExternalLoginCallback()中的_signInManager.ExternalLoginSignInAsync()上设置了一个断点.在第一次登录时,它返回Result.Succeeded false,可能是因为电子邮件未注册.在第二次登录期间,它返回Result.IsNotAllowed,它不由以下一系列'if'语句处理,因此由'else'块处理 - 与Result.Succeeded false相同.
有谁知道Result.IsNotAllowed是什么意思以及为什么设置它?有解决方法吗?
谢谢威尔
我使用R v3.3.2和Caret 6.0.71(即最新版本)来构建逻辑回归分类器.我使用confusionMatrix函数创建统计数据来判断其性能.
logRegConfMat < - confusionMatrix(logRegPrediction,valData [,"Seen"])
准确度:0.7239
灵敏度:0.3333
特异性:0.9213
我的数据中的目标值(Seen)使用1表示true,0表示false.我假设混淆矩阵中的参考(地面实况)列和预测(分类器)行遵循相同的约定.因此我的结果显示:
问题:为什么灵敏度为0.3333,特异性为0.9213?我原本以为它是相反的 - 见下文.
我不愿意相信R confusionMatrix函数中存在错误,因为没有报告任何内容,这似乎是一个重大错误.
关于计算特异性和敏感性的大多数参考文献将它们定义如下 - 即www.medcalc.org/calc/diagnostic_test.php