2010-02-23 2 views
2

Я конвертирую существующее приложение vb2003 asp.net 1.1 в C# 2008 asp.net 3.5. я скопировал HTML на моем окне # разметки C (состоящие из меток, текстовых полей & кнопки)Миграция с VB 2003 (ASP.Net) на C# 2008 ASP.Net

Однако, когда я attepmt в «Открыть в браузере», я получаю ошибку ниже:

Compiler Сообщение об ошибке : CS1061: «ASP.apps_forms_newproductregistration_newproductreg_aspx» не содержит определения для «btnSubmit_Click», и не может быть найден метод расширения «btnSubmit_Click», принимающий первый аргумент типа «ASP.apps_forms_newproductregistration_newproductreg_aspx» (вам не хватает директивы использования или ссылки на сборку ?)

Ошибка источника:

Line 320:<tr> 
Line 321: <td><input type="reset" value="Reset" class="formbutton"> 
Line 322: <asp:button cssclass="formbutton" text="Next" id="btnSubmit" runat="server" onclick="btnSubmit_Click"/></td> 
Line 323:</tr> 

Мой код позади содержит следующий код:

protected void btnSubmit_Click(object sender, EventArgs e) 
    { 
     if (ValidateHeader() && ValidateFooter()) 
      LoadDatabase(); 

    } 

Любые идеи?

+0

Вопрос, приведенный выше, не отображает мои строки кода HTML (строка ошибки источника 320: строка 321 и т. Д.) Почему так? – user279521

+0

@ user279521 - угловые скобки в бит HTML отбрасывают механизм рендеринга, вам нужно отметить этот блок как код для его видимости. – Murph

+0

Вы используете Visual Studio? Есть ли причина, по которой вы не просто используете мастер обновления, который обрабатывает конверсию для вас? (По моему опыту, он отлично справляется с этим, если у вас нет сторонних компонентов) – David

ответ

6

У меня были проблемы с совместимостью, когда я копировал и вставлял код из одной версии в другую. Лучше всего было бы переписать полный код с нуля.

HTH.

+0

Спасибо. То что я закончил делать. – user279521

1

Подумав об этом в течение нескольких минут, моя первая мысль заключается в следующем:

Что-то в файле ASPX-х @Page directive неправильно. Типичный ASP.NET заголовок страницы для C# в VS2008 выглядит следующим образом:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 

(Это из нового /Default.aspx файла, файлы могут иметь дополнительные атрибуты, такие как MasterPageFile)

Обратите внимание, что Линия Inherits чувствительна к регистру в C#, поэтому она должна точно соответствовать имени класса CodeFile.

+0

Я не изменял директиву @Page. В своем прошлом опыте я его модифицировал и поэтому знаком с проблемами, которые могут возникнуть. На этот раз я дважды проверил директиву. Я даже удалил свою страницу, создал новую страницу и создал новую кнопку (заменяя кнопку с 2003 года). Еще не повезло. – user279521

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