2016-10-11 12 views
0

У меня есть модуль Нэнси так:Не можете найти NancyOwinHost

using System; 
using System.Collections.Generic; 
using System.Security.Principal; 
using Nancy; 

public class StatusModule : NancyModule 
{ 
    public StatusModule() 
    { 
     Get["/"] = _ => 
     { 
      var env = ((IDictionary<string, object>) Context.Items[Nancy.Owin.NancyOwinHost.RequestEnvironmentKey]); 
      var user = (IPrincipal) env["server.User"]; 
      return Response.AsJson(new {TimeStamp = DateTime.Now.ToString("O"), Status = "OK"}); 
     }; 
    } 
} 

Однако я получаю отказ компиляции, что NancyOwinHost не может быть найден. Согласно SymbolSource, он должен быть открытым классом в сборке Nancy.Owin; однако последнее, что у них есть, - 1.3.0, и я использую 1.4.1.

Крекинг открытой, что сборка это действительно выглядит, как будто это не было

DotPeek view of Nancy.Owin assembly

Любой посоветуете? Я пытаюсь реализовать WindowsAuthentication над Nancy.

Благодаря

Dave

Редактировать

Я попытался откате до версии 0.22.1 и теперь класс присутствует. (Хотя он не работает во время выполнения, так как теперь сборки не соответствуют Field not found: 'Nancy.Bootstrapper.NancyBootstrapperLocator.Bootstrapper'.).

ответ

0

крошечные немного копать и здравый смысл, и я понял, что волшебные слова:

var requestEnvironment = (IDictionary<string, object>) Context.Items["OWIN_REQUEST_ENVIRONMENT"]; 
var user = (IPrincipal) requestEnvironment["server.User"]; 

 Смежные вопросы

  • Нет связанных вопросов^_^