Что случилось с обработчиками (ASHX) в ASP.NET 3.5 - PullRequest
2 голосов
/ 03 февраля 2009

Почему код «универсального обработчика» по умолчанию в веб-приложении ASP.NET 3.5 добавляет атрибуты к классу, но не правильные ссылки на пространство имен. Это шаблон, который вам дают из коробки:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Handler1
{
    /// <summary>
    /// Summary description for $codebehindclassname$
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    public class People : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            context.Response.Write("Hello World");
        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}

Почему у них нет строки вверху:

using System.Web.Services;

Это ошибка в шаблоне Microsoft по умолчанию? Я что-то упустил?

1 Ответ

4 голосов
/ 03 февраля 2009

РЕДАКТИРОВАТЬ: я вижу это сейчас, когда вы добавляете универсальный обработчик в веб-приложение (извините, я пропустил этот вопрос в первый раз), я получаю новый неработающий шаблон. Я согласен с другим пользователем, что вы должны просто отредактировать шаблон по умолчанию. Однако, если вы используете MVC, вам больше не нужны обработчики.

Похоже, это известная ошибка, вот проблема MS Connect для этого .

Если вы хотите отредактировать шаблон, он находится здесь: C: \ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ ItemTemplates \ CSharp \ Web \ 1033 \ Handler.zip

...