2014-01-22 4 views
1

Я хотел создать проект после этой обучающей программы: http://www.strathweb.com/2013/01/asynchronously-streaming-video-with-asp-net-web-api/HttpContent, HTTPResponseMessage не могут быть решены - импортированы в проект ASP

Я создал веб-приложения в Visual Studio 2013. скопировал код из учебника, и я есть нет resolve->using во всплывающем меню для некоторых элементов, например: HttpContent, HTTPResponseMessage. Я не знаю, какие ссылки мне не хватает. Почему возникает проблема?

enter image description here

EDIT:

config.Routes.MapHttpRoute(
    name: "DefaultVideo", 
    routeTemplate: "api/{controller}/{ext}/{filename}" 
); 

ответ

1

Yoda,

Оказывается, у вас есть стандартный WebApplication. Код, который вы скопировали и вставили, составляет MVC Web API Applications.

Закройте решение и создайте новый проект, выбрав New-> New Project из меню «Проекты», выберите Visual C# -> Web -> ASP.NET MVC 4 Web Application, например изображение ниже.

enter image description here

Когда вы выбираете ASP.NET MVC 4 Web Application вам будет предоставлена ​​возможность выбрать тип проекта. Из списка выберите Web Api.

Теперь, чтобы использовать модификатор async, вы должны перенаправить ваш проект. Щелкните правой кнопкой мыши по названию проекта в поле Soltion Explorer и выберите Properties. В окне свойств перейдите на вкладку Application и измените команду Target Framework на .NET Framework 4.5 и сохраните желаемый результат на Yes.

enter image description here

После того, как вы сделали это просто добавить новый класс VideoStream и копировать вставить код. У вас будет контекстное меню Resolve -> using.... Для вашей информации вы должны добавить следующие операторы using.

using System.Net; 
using System.Net.Http; 

EDIT:

Дополнительный ответ, основанный на редактировании. Код, отрезанный в вашем поле, используется для Карта Маршруты. Добавьте этот код в файл, расположенный

/App_Start/WebApiConfig.cs

Там уже будет запись по умолчанию. Ваш конечный результат будет выглядеть следующим образом:

public static class WebApiConfig 
{ 
    public static void Register(HttpConfiguration config) 
    { 
     config.Routes.MapHttpRoute(
      name: "DefaultApi", 
      routeTemplate: "api/{controller}/{id}", 
      defaults: new { id = RouteParameter.Optional } 
     ); 

     config.Routes.MapHttpRoute(
      name: "DefaultVideo", 
      routeTemplate: "api/{controller}/{ext}/{filename}" 
     ); 
     config.EnableSystemDiagnosticsTracing(); 
    } 
} 
+0

Спасибо, что сработали. Вы знаете, где добавить код из редактирования? Это не похоже на C#, и нет упоминаний о том, куда он должен идти. (Это мое приложение .ASP). –

+0

Я ПРОЯВЛЯЮ. По ошибке я отредактировал ваш пост, а не мой. –

+0

Нет проблем. Редактирование отменено (отклонено). Рад, что это сработало для вас. – Nico

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