не удалось создать тип XYZ.ashx - PullRequest
5 голосов
/ 12 сентября 2011

Когда я пытаюсь создать свое решение, я получаю сообщение Не могу создать тип Upload.ashx. Я вырываю свои волосы, чтобы решить эту проблему. Кто-нибудь может подсказать мне, как исправить эту проблему. И я не знаю, как это сделать.на самом деле добавить пространство имен к классу?

Как у меня есть Вот мой код:

<%@ WebHandler Language="vb" CodeBehind="Upload.ashx.vb" Class="Upload" %>

И это моя структура dir:

wwwroot/Test/Myproject

Ответы [ 5 ]

2 голосов
/ 12 сентября 2011

Я не думаю, что существует такая вещь, как тип файла .ashx.vb.

Попробуйте изменить верхнюю строку на:

<%@ WebHandler Language="VB" Class="Upload" %>

, а затем просто поместите свой код в код .ashx

<%@ WebHandler Language="VB" Class="Upload" %>

Imports System
Imports System.Web

Public Class Upload : Implements IHttpHandler

    'Code here....

End Class

Или вы пытались создать свой код?

См. Этот вопрос для получения дополнительной помощи:

Пользовательские Http-обработчики IIS7 и ASP.NET

0 голосов
/ 14 мая 2016

Некромантия потока, но у меня была та же проблема. Предложение @Sargar-s о названии сборки у меня не сработало. Итак, я попробовал это, и я получил хорошую сборку (пока не уверен насчет реальной функциональности):

<%@ Assembly Src="~/MyService.ashx.cs" %>
<%@ WebHandler Language="C#" CodeBehind="MyService.ashx.cs" Class="Namespace.MyService" %>

Атрибуты Src и Name являются взаимоисключающими. Атрибут CodeBehind и Src являются избыточными. Я не пытался увидеть, будет ли Src адекватным, если CodeBehind будет удален. Нет времени экспериментировать почти в 3 часа ночи - или читать документы, которые могут прояснить такие вещи. НТН

0 голосов
/ 07 января 2014

Добавить тег ниже

<%@ Assembly  Name="YourNameSpace.YourHandlerClass, Version=1.0.0.0, Culture=neutral, PublicKeyToken=90e3045b123af1c3" %>

над тегом WebHandler

<%@ WebHandler Language="vb" CodeBehind="Upload.ashx.vb" Class="Upload" %>
0 голосов
/ 28 октября 2013

Я знаю, что это старый вопрос, но на данный момент он находится на вершине Google, поэтому для всех, кто ищет: В проекте веб-сайта директива обработчика ожидает различные параметры для веб-сайтов и веб-приложений.В этом случае (веб-сайт) искал codeFile вместо (веб-приложения) codeBehind:

<%@ WebHandler Language="vb" CodeFile="Upload.ashx.vb" Class="Upload" %>
0 голосов
/ 11 ноября 2011

Я несколько часов бился головой об стену из-за этой ошибки "не удалось создать тип", и она может не помочь в вашей конкретной проблеме

Я разделил свой код позади множества частичных классов, все они назывались restserver, кроме одного, который назывался restServer (обратите внимание на заглавную букву S), это была небольшая разница, которая вызывала ошибку, я изменил их все на тот же случай, и он работал отлично.

VS не очень помогает при работе с файлами ASHX.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...