Я использую VS 2015 Сообщество и пытается создать WebServer консоль, используя эти «простые» учебники:CS0234 t Тип или пространство имен имя «Owin» не существует в пространстве имен «Microsoft»
OWIN and Katana part 1: the basics
Оба учебника кажутся достаточно легкими, однако я очень сильно застреваю в одном и том же месте, когда я пытаюсь их скомпилировать. Оба руководства ссылаются на DNX 4.5.1 (Microsoft.Owin.Host.HttpListener (3.0.1) и Microsoft.Owin.Hosting (3.0.1)) & DNX Core 5.0. Вот код из первого звена (который практически идентичен (включая ошибки) на вторую линию, так что я не буду включать этот код):
using Microsoft.Owin.Hosting;
using Owin;
using System;
namespace KatanaBasics
{
public class Program
{
public static void Main(string[] args)
{
string uri = "http://localhost:7990";
using (WebApp.Start<startup>(uri))
{
Console.WriteLine("Web server on {0} starting.", uri);
Console.ReadKey();
Console.WriteLine("Web server on {0} stopping.", uri);
}
}
}
public class startup
{
public void Configuration(IAppBuilder appBuilder)
{
appBuilder.Run(owinContext =>
{
owinContext.Response.WriteAsync("Hello from OWIN web server");
});
}
}
}
я получаю красные волнистые линии, начиная с owinContext => и он продолжается до конца метода. А вот ошибки, которые я получаю, когда я пытаюсь скомпилировать:
Severity Code Description Project File Line Suppression State
Error CS0234 The type or namespace name 'Owin' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) KatanaBasics.DNX Core 5.0
Severity Code Description Project File Line Suppression State
Error CS0246 The type or namespace name 'Owin' could not be found (are you missing a using directive or an assembly reference?) KatanaBasics.DNX Core 5.0
Severity Code Description Project File Line Suppression State
Error CS0246 The type or namespace name 'IAppBuilder' could not be found (are you missing a using directive or an assembly reference?) KatanaBasics.DNX Core 5.0
Severity Code Description Project File Line Suppression State
Error CS0103 The name 'WebApp' does not exist in the current context KatanaBasics.DNX Core 5.0
Severity Code Description Project File Line Suppression State
Error CS1643 Not all code paths return a value in lambda expression of type 'Func<IOwinContext, Task>' KatanaBasics.DNX 4.5.1
Owin не в DNX Ядра 5.0, но это в DNX 4.5.1. Я подумал, что, может быть, я могу переместить или скопировать в DNX 4.5.1, но кажется, что DNX Core 5.0 там, где он хочет по умолчанию.
Я нашел решения для подобных проблем, но я не понимаю всех объяснений. Например, я прочитал одно сообщение, в котором говорится, что он меняет цели, однако я даже не мог найти ничего похожего на то, что они описали, чтобы «исправить». Итак, кажется, мне, возможно, нужен более ранний из DNX Core 5.0? Если да, то как мне обратиться к более ранней версии? Большое спасибо!
Вы также вручную добавили ссылку на сборку по проекту-> ссылки ..? – MethodMan
Я добавил Microsoft.Owin.Host.HttpListener и Microsoft.Owin.Hosting из Project -> Управление пакетами NuGet. Какую ссылку следует добавить с помощью Project -> References? –
вам нужно убедиться, что пакет добавлен в файл .config, и есть способ обойти это. Если вы можете создать папку зависимостей в своем проекте, вручную скопируйте dll в эту папку, затем щелкните правой кнопкой мыши в папке в проекте и выберите AddExisting Item .. затем, как только вы добавите это. щелкните правой кнопкой мыши ссылки, добавьте ссылку .. и перейдите в папку зависимостей .. выберите ее .. затем перейдите в CopyLocal из dll в ссылки и установите это значение в значение 'true' – MethodMan