Настройка действия формы в .net 3.5 SP1 приводит к ошибкам при компиляции

StackOverflow https://stackoverflow.com/questions/34768

  •  09-06-2019
  •  | 
  •  

Вопрос

Недавно я установил .net 3.5 SP1.1.Когда я развернул скомпилированный веб-сайт, который содержал форму с набором действий:

<form id="theForm" runat="server" action="post.aspx">

Я получил эту ошибку.
Метод не найден:'Аннулирует System.Web.UI.HtmlControls.HtmlForm.set_Action(System.Строка)'.
Если коллега-разработчик, у которого не установлен пакет обновления 1, развертывает скомпилированный сайт, он работает нормально.Кто-нибудь знает какие-либо решения для этого?

Это было полезно?

Решение

. NET 3.5 SP1 пытается использовать действие = " атрибут (.NET 3.5 RTM не сделал). Таким образом, при развертывании ваш код пытается установить свойство HtmlForm.Action и завершается ошибкой, поскольку System.Web.dll в целевом объекте развертывания является RTM и не имеет установщика в свойстве.

Другие советы

Я не знаю конкретного решения, но HtmlForm.set_Action () - это функция, создаваемая компилятором, которая действует как установщик для свойства с именем Action.

Когда вы это сделаете:

public String Action { set { DoStuff(); } }

Код set фактически становится функцией с именем set_Action .

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

Я просто столкнулся с той же проблемой. Из того, что я понял, это действительно вызвано тем фактом, что на моем ПК установлен .NET 3.5 SP1, а на сервере, на котором я развернул проект, - Насколько я понимаю, одним из решений является обновление сервера до версии .NET 3.5 SP1. Поскольку я пока не хочу этого делать, я просто удалил действие " action " атрибут из всех форм в проекте, и это решило проблему.
Подробнее ...

Можно использовать метод здесь , чтобы установить форму form.action метод:

Все упомянутое выше верно ...

Фактически, когда кто-то устанавливает 3.5 SP1, он автоматически обновляет 2.0 и 3.0 со своим собственным SP2. Таким образом, если вы используете 2.0 для приложения, вы получите ошибку.

Кроме того, SP1 на .Net2.0 не вызывал проблему.

Есть другое решение этой проблемы.Напишите javascript, который устанавливал бы действие формы на ожидаемый URL-адрес при загрузке страницы и регистрировал скрипт при загрузке страницы.

Спасибо, http://www.dilrukshidevapriya.blogspot.com

Просто установите работающую платформу 3.5 SP1.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top