Microsoft.Owin.Host.SystemWeb 并仍然在上下文中找不到 owin.Environment 项目

2023-11-23

我已经阅读了很多关于此的帖子,但仍然无法使其发挥作用。 我正在使用 Visual Studio 2013。我创建了一个新的 MVC 5 项目,并认为使用新的 facebook 登录集成会很酷。它在我的电脑上的 IIS Express 上运行良好。

但是,当我将其上传到生产服务器时,我不断收到非常烦人的“在上下文中找不到 owin.Environment 项目”消息。

这就是我所做的。

  1. 我从未更改过项目或程序集的名称。
  2. 程序集名称为 Wodivate
  3. 命名空间是 Wodivate
  4. 我有默认的 Startup.cs 类,其中包含以下内容:

    using Microsoft.AspNet.Identity;
    using Microsoft.Owin;
    using Microsoft.Owin.Security.Cookies;
    using Owin;
    using System.Web.Http;
    
    [assembly: OwinStartupAttribute(typeof(Wodivate.Startup))]
    namespace Wodivate
    {
        public partial class Startup
        {
            public void Configuration(IAppBuilder app)
            {
                ConfigureAuth(app);
            }
    
        }
    }
    
  5. 在App_Start中有一个Startup.Auth.cs文件,其中包含:

    using Microsoft.AspNet.Identity;
    using Microsoft.Owin;
    using Microsoft.Owin.Security.Cookies;
    using Owin;
    
    namespace Wodivate
    {
        public partial class Startup
        {
            // For more information on configuring authentication, please visit http://go.microsoft.com/fwlink/?LinkId=301864
            public void ConfigureAuth(IAppBuilder app)
            {
                // Enable the application to use a cookie to store information for the signed in user
                app.UseCookieAuthentication(new CookieAuthenticationOptions
                {
                    AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
                    LoginPath = new PathString("/Account/Login")
                });
                // Use a cookie to temporarily store information about a user logging in with a third party login provider
                app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);
    
                // Uncomment the following lines to enable logging in with third party login providers
                //app.UseMicrosoftAccountAuthentication(
                //    clientId: "",
                //    clientSecret: "");
    
                //app.UseTwitterAuthentication(
                //   consumerKey: "",
                //   consumerSecret: "");
    
                var facebookOptions = new Microsoft.Owin.Security.Facebook.FacebookAuthenticationOptions()
                {
                    AppId = "xxxxxxxxxxxxxxxxxxx",
                    AppSecret = "xxxxxxxxxxxxxxxxxxxxxxxxx"
                };
                facebookOptions.Scope.Add("email"); //We want to get user's email information by adding it in scope.
                app.UseFacebookAuthentication(facebookOptions);    
    
                //app.UseGoogleAuthentication();
            }
        }
    }
    
  6. 我的 Web.config 文件包括:

    <add key="owin:AppStartup" value="Wodivate.Startup, Wodivate" />
    <add key="owin:AutomaticAppStartup " value="false" />
    
  7. 我还确保关注了该帖子在上下文中未找到 owin.Environment 项目 - 仅在服务器上并安装了 Microsoft.Owin.Host.SystemWeb

还有其他人坚持这个吗?我已经碰壁3天了。


我也遇到了同样的问题,这是由 IIS 设置引起的。

我的 IIS 部署有一个顶级站点,其下有多个应用程序。您应该确保您的站点级别的“应用程序设置”不与您的应用程序的冲突。

就我而言,我在站点级别有“owin:AutomaticAppStartup = false”,它由我的应用程序继承。

Summary:

  1. 打开 IIS 管理器
  2. 选择服务器 -> 应用程序设置。确保此级别没有冲突。
  3. 选择站点 -> 应用程序设置。确保此级别没有冲突。

enter image description here


Edit:我发现您可以简单地在 web.config 中添加以下 appSetting 来覆盖任何潜在的继承冲突。我建议您首先了解是否存在冲突,以便您可以做出明智的改变。

<add key="owin:AutomaticAppStartup" value="true"/>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Microsoft.Owin.Host.SystemWeb 并仍然在上下文中找不到 owin.Environment 项目 的相关文章

  • 不同提供商的相同 EDMX 文件

    我正在开发一个项目 其中有一个本地数据库 SQL CE 在不存在与服务器的连接的情况下用作缓冲区 在服务器上我想使用相同的数据库布局 当然 我想使用服务器和客户端上可用的 Common dll 中的相同 EDMX 文件 在客户端中 我有一个
  • 成员字段、构建顺序

    在 C 中 当执行如下所示的操作时 构造顺序是否得到保证 Logger Logger kFilePath logs runtime log logFile kFilePath 是的 施工顺序始终得到保证 但是 不能保证它与对象在初始值设定项
  • 如何向WebRequest添加参数?

    我需要从 Web 服务调用一个方法 所以我编写了以下代码 private string urlPath http xxx xxx xxx manager string request urlPath index php org get or
  • 显示 div 内的用户名列表

    我是 jQuery 新手 在我的项目中 我创建了一个类User其中代码如下所示 static ConcurrentDictionary
  • 如何使用最小起订量模拟私有只读 IList 属性

    我试图嘲笑这个列表 private readonly IList
  • 是否有可能将 *.pdb 文件包含到发布版本中以查看错误行号?

    我做了一个项目 所有设置都是默认的 当我在调试模式 构建配置 调试 下运行它并遇到异常时 它转储到我的自定义日志记录机制 其中包含错误行号 但是当我运行发布构建时 记录相同的异常 没有行号 只有方法抛出和记录调用堆栈 是否有可能在发布配置
  • 使用 GCHandle 将大型结构数组从 C# unity 脚本传递到 C++ dll 在 C++ 函数执行后崩溃

    我想从 C unity 脚本将结构数组传递给 c 本机插件 我做了如下操作 我可以访问数据 但我的应用程序在执行 c 函数后崩溃 我不知道为什么 C side StructLayout LayoutKind Sequential publi
  • 如何检查号码是否只有唯一的数字?

    例如 2345 是唯一的数字 因为没有数字显示两次 但 3324 不是唯一的数字 因为 3 出现了两次 我尝试使用 但我 代码 显示但我没有得到数字我得到了数字 编辑 你不能使用字符串 number 10 number 100 number
  • 如何部署包含第三方 DLL 文件的 C# 应用程序?

    首先 我对部署了解不多 我希望我的问题有意义 我需要将 C 应用程序安装 部署到多个桌面 它需要一个第三方 DLL 文件 一个 C 库 lpsolve55 dll 对于那些感兴趣的人 它是一个免费的 MIP LP 求解器 请参阅 lpsol
  • 如何将 Visual-Studio 2010 切换到 c++11

    我是 c 编程新手 我想尝试 c 11 新功能 那么我要问的是如何切换 Visual studio 2010 才能编译 c 11 源代码 你可以参考这个表 VC10 中的 C 0x 核心语言功能 表格 http blogs msdn com
  • 应用新设置时如何防止 GraphicsDevice 被丢弃?

    我的游戏窗口允许手动调整大小 这意味着它可以像任何其他普通窗口一样通过拖动其边缘来调整大小 游戏还利用了RenderTarget2D rt2d 在主 Draw 方法中设置主渲染目标 GraphicsDevice SetRenderTarge
  • C#生成的csv文件通过电子邮件发送嵌入到Lotus Note中电子邮件的底部

    我遇到了一个奇怪的问题 即使用 NET SmtpClient 通过电子邮件发送的 CSV 附件出现在电子邮件底部 而不是 Lotus Note 中的附件 我只是不知道如何解决这个问题 而且我无法访问客户端计算机 这使得调试非常困难 我可以采
  • 根据 Active Directory 策略检查密码[重复]

    这个问题在这里已经有答案了 我有一个允许用户更改其 AD 密码的前端 有没有办法获取特定用户及其属性 长度 复杂性 的密码策略 例如细粒度 有没有办法根据此特定策略检查字符串 xyz121 编辑 我不想检查活动目录中存储的当前密码 我想检查
  • Web 文本编辑器中的 RTF 格式

    网络上是否有支持 RTF 格式文档输入的文本编辑器 我知道这对 webdev 来说有点奇怪 但我需要从数据库中读取 RTF 文档 并在基于 Web 的文本编辑器中对其进行编辑 然后将其存储回 RTF 中 在我在转换工具上投入太多资金之前 我
  • C# 反序列化过程中创建指向父对象的指针

    我有这样的课程 Serializable public class child public Parent parent Serializable public class Parent public List
  • Code::Blocks 中的调试似乎不起作用 - 缺少调试符号

    我正在尝试在 Code Blocks 中调试程序 我跟着本指南 http wiki codeblocks org index php title Debugging with Code Blocks and 这个短视频 http www y
  • 文本框中“结束编辑”的事件

    我正在 winform c 中使用文本框 并使用文本在数据库中进行查询 但每次文本更改时 我都需要不断查阅文本框的文本 因此 对于这些 我使用 KeyUp 但这个活动太慢了 文本框编辑完成后是否会触发任何事件 我考虑完成2个条件 控制失去焦
  • 如何使 WinForms UserControl 填充其容器的大小

    我正在尝试创建一个多布局主屏幕应用程序 我在顶部有一些按钮链接到应用程序的主要部分 例如模型中每个实体的管理窗口 单击这些按钮中的任何一个都会在面板中显示关联的用户控件 面板包含用户控件 而用户控件又包含用户界面 WinForms User
  • 如何创建实体集或模型而不在数据库中创建相应的表 - 实体框架

    我的 sqlserver 数据库中有一个存储过程 它返回多个结果集 我正在使用 msdn 中的以下链接从实体框架中的 SP 读取多个结果集 https msdn microsoft com en us library jj691402 v
  • 线程安全的有限大小队列,不使用锁

    我正在尝试编写一个主题队列 但遇到死锁和其他多线程问题 我想用Interlocked CompareExchange避免lock用法 但这段代码并没有按预期工作 它只是擦除整个队列 我在这里做错了什么 public class FixedS

随机推荐

  • 更改数据库中所有存储过程的 ANSI_NULLS 设置

    我们在 ANSI NULLS 设置和计算列方面存在一些问题 并且我们有大量的存储过程 SET ANSI NULLS OFF 我们想把它们全部改成 SET ANSI NULLS ON 有没有一种简单的方法可以做到这一点 或者我必须将所有 SP
  • 如何使用 dart_pdf 将资产图像和图标转换为 flutter 中的 PdfImage

    使用的库 dart pdf搜索后我发现同样的问题GITHUB但无法解决问题 我尝试了这个 但出现了模糊的图像 请帮忙 ByteData data await rootBundle load assets test jpg var codec
  • 改变iphone sdk中图像的颜色

    我有一个图像 我想通过编程更改该图像的颜色 我想改变这张图片的颜色 UPDATE 使用这个方法 UIImage imageNamed NSString name withColor UIColor color load the image
  • Rails flash[:notice] 总是 nil

    我不明白为什么我的 Rails 视图无法识别 flash notice 或 flash error 关于渲染的部分视图 我不断收到以下错误 具体错误是 ActionView Template Error 当你没有预料到时 你得到了一个 ni
  • 在每个文档中构建具有附加字段的反应式出版物

    我想制作一个包含几个附加字段的出版物 但我不想使用Collection aggregate当集合发生变化时 我的出版物更新就会丢失 所以我不能只使用self added在其中 我打算使用Cursor observeChanges为了实现这一
  • GMP pow 中的溢出处理

    我只是 GMP 库的间接用户 主要通过swi prolog and yap 但我对解决这个问题非常感兴趣 当使用大得离谱的值执行求幂时 主机系统或 GMP 不再能够适当地处理溢出 我已经与上述系统的开发人员交谈过 但他们没有看到解决此问题的
  • 在进程和 DLL 之间共享全局/静态变量

    我只想在进程和进程调用的 dll 之间共享静态 全局变量 exe和dll位于同一内存地址空间 我不希望该变量在其他进程之间共享 问题的阐述 假设有一个静态 全局变量x in a cpp 两个都是exefoo exe和动态链接库bar dll
  • 以编程方式更改 android:digits

    我在布局 xml 中有这个 android digits 0123456789 android inputType phone gt 我想要的是能够以编程方式更改它并且能够来回更改它 输入 Type 部分很好 manual ip setIn
  • 如果特定情况没有返回结果,则使用 count(*) 显示零

    我有一个这样的查询 它返回 city 中每个案例的行数 select case edition id when 6 then DELHI when 50 then AHMEDABAD when 4 then HYDERABAD when 2
  • Android L“令人愉快的”可绘制转换

    Google 是否允许使用图标诸如此类的过渡由开发商创建 或者是开发人员有责任创建这种 令人愉快的 过渡 我真的很想在我的应用程序中实现这些 具体是这样的图标 您可以使用 AnimatedDrawable 和基于位图的框架创建动画图标 在L
  • 缓存 JavaScript 承诺结果

    我会向服务器发出一次调用以获取项目列表 如何确保仅进行一次调用并且仅处理集合一次以创建键值映射 var itemMap function getItems getAllItemsFromServer then function data d
  • 真正的自定义按钮形状

    给定任何形状 实心圆形 星形 三角形 带有透明区域的位图等 我想知道是否可以 使用最新的 Android API 知道用户是否单击了视图或视图之外 例如 如果我有一个圆形按钮 我想知道用户是否在圆圈内单击 而不是在圆圈外单击 是否可以 如果
  • 在android中捏缩放以获得图像视图?

    我有一个要求 我必须在捏合时放大和缩小图像 如果有人可以建议我使用 Imageview 的捏合缩放功能 请 只需执行以下操作即可获得捏缩放 将您的图像放在资产文件夹中并提供此代码 String imageUrl file android a
  • 如何在 Java 中读写时强制使用 UTF-16?

    我发现您可以通过以下方式指定 UTF 16 作为字符集Charset forName UTF 16 并且您可以通过以下方式创建新的 UTF 16 解码器Charset forName UTF 16 newDecoder 但我只看到指定一个的
  • DrawerNavigator:更改文本颜色

    On react navigation s DrawerNavigator 有没有办法改变项目的文本颜色和背景颜色 By default the color scheme looks like the following 由以下内容初始化
  • 如何使用 ORMLite 正确注释继承类?

    我正在尝试将继承与 ORMLite 一起使用 但通过查看文档和谷歌搜索 我无法确定它是否受支持 我想做的是拥有 public abstract class Person public int id public String name pu
  • 如何使用命令提示符导出 mysql 数据库?

    我有一个非常大的数据库 所以我想使用命令提示符导出它 但我不知道如何导出 我正在使用WAMP 首先检查你的命令行是否识别mysql命令 如果没有转到命令并输入 set path c wamp bin mysql mysql5 1 36 bi
  • Win32 应用程序中“WindowProc”的正确返回值

    在 MSDN 的 Win32 Api 文档中 位于http msdn microsoft com en us library ms633573 28VS 85 29 aspx 在WindowProc 它指出 返回值是消息处理的结果 取决于发
  • 使 bash 脚本在 Linux 和 FreeBSD 之间可移植的正确方法是什么?

    我正在编写一些 bash 脚本 我希望这些脚本可以在我的 Linux 和 FreeBSD 系统上运行 因为我主要在 Linux 上工作 所以我习惯用以下命令启动 bash 脚本 bin bash 但这在 FreeBSD 上不起作用 因为 b
  • Microsoft.Owin.Host.SystemWeb 并仍然在上下文中找不到 owin.Environment 项目

    我已经阅读了很多关于此的帖子 但仍然无法使其发挥作用 我正在使用 Visual Studio 2013 我创建了一个新的 MVC 5 项目 并认为使用新的 facebook 登录集成会很酷 它在我的电脑上的 IIS Express 上运行良