2016-08-02 84 views
0

下面的配置方法没有被触发。配置(IAppBuilder)在启动时未触发

using Microsoft.Owin; 
using Owin; 

[assembly: OwinStartupAttribute(typeof(SCM.Web.Startup))] 
namespace SCM.Web 
{ 
    public partial class Startup 
    { 
    public void Configuration(IAppBuilder builder) { } 
    } 
} 

我已经照着所有从here的提示,这是一个新的项目,而不是升级。我不能在我的生活中看到如何让它在断点处停下来,我需要得到更多关于如何解决问题的建议。

这是一个Intranet应用程序,因此不会登录。身份被设置为Windows凭据。我需要分配角色,以便只有某些用户可以访问控制器中的某些操作。我通常使用OWIN和应用程序cookie,所以这也是我在这里试图遵循的方法。

回答

0

如果您在外部IIS上运行网站,或者在计算机上安装的“真实”IIS上运行网站(而不是在开始运行时启动的网站),则可能是因为缺少因为调试程序在您传递时尚未附加到进程中。

我认为您可以通过检查您的解决方案和项目的设置或者简单地将此代码添加到您认为不通过的方法来确认它。

throw new Exception("Killroy was here..."); 
2

你需要一个OwinStartup属性来告诉Owin调用什么方法。从文档:

用于标记程序集中的哪个类应用于自动启动。

添加一个到您的项目,命名空间声明之前:

[assembly: OwinStartup(typeof(Your.Namespace.Startup))] 
namespace Your.Namespace 
{ 
    public partial class Startup 
    { 
     public void Configuration(IAppBuilder builder) { } 
    } 
} 

还有一些其他的方法来让Owin知道哪种方法(described here),但是这是最简单也可能是最常见的。

+0

对不起,但我意识到我提供的信息不足。我没有意识到这是有意义的,并试图创造最小的,有代表性的例子,我切断了比我应该更多。请接受我的道歉。我已经更新了这个问题。 –

+1

您没有任何机会设置“owin:appStartup”的应用程序设置? – DavidG

+0

不,据我所知,解决方案中的任何地方都没有这样的字符串。不过,我明天会在工作中重新检查,只是为了确保。从MVC 4升级时,这个元素进来了吧?我的情况是一个干净的MVC 5.为防万一我第一次错过了它,我检查了 - 我该怎么处理它?去掉? –

相关问题