На средства управления ASP.NET нельзя сослаться в коде - позади в Visual Studio 2008

Как я объясняю в мой ответ на другой вопрос, PECS - это мнемоническое устройство, созданное Джошем Блохом, чтобы помочь вспомнить производителя extends, Consumer super.

Это означает, что когда параметризованный тип, передаваемый методу, будет выдавать экземпляры из T (они будут извлечены из него каким-либо образом), следует использовать ? extends T, поскольку любой экземпляр подкласса T также является T.

Когда параметризованный тип, передаваемый методу, будет потреблять экземпляры T (они будут переданы в он должен что-то сделать), ? super T следует использовать, потому что экземпляр T можно законно передать любому методу, который принимает некоторый супертип T. Например, Comparator можно использовать на Collection. ? extends T не будет работать, потому что Comparator не может работать на Collection.

blockquote>

Обратите внимание, что обычно вы должны использовать только ? extends T и ? super T для параметров какого-либо метода. Методы должны использовать T только как параметр типа для типичного типа возврата.

31
задан 8 revs, 5 users 47% 14 December 2017 в 10:08
поделиться

5 ответов

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

здесь

%Temp%\VWDWebCache

и возможно здесь

%LocalAppData%\Microsoft\WebsiteCache
16
ответ дан abatishchev 27 November 2019 в 21:48
поделиться

Состоит в том управление, что Вы пытаетесь сослаться в повторителе?

Раз так тогда необходимо посмотреть их использование метода FindControl.

, Например, для:

<asp:Repeater ID="Repeater1" runat="server">
    <ItemTemplate>
        <asp:LinkButton ID="LinkButton1" runat="server">stest</asp:LinkButton>
    </ItemTemplate>
</asp:Repeater>

необходимо было бы сделать это для ссылки на него:

LinkButton lb = Repeater1.FindControl("LinkButton1");
12
ответ дан Sean Lynch 27 November 2019 в 21:48
поделиться

вы также найдете временные файлы .net, которые можно безопасно удалить здесь: C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ Временные файлы ASP.NET

3
ответ дан 27 November 2019 в 21:48
поделиться

Вышеуказанное исправление (удаление временных файлов) мне не помогло. Мне пришлось удалить файл PageName.aspx.design.cs, затем щелкнуть правой кнопкой мыши по моей странице и выбрать "Преобразовать в веб-приложение" из контекстного меню.

Когда Visual Studio попыталась восстановить файл конструктора, она обнаружила (и открыла мне) источник проблемы. В моём случае VS потеряла ссылку на DLL, нужную одному из элементов управления на моей странице, поэтому мне пришлось очистить сгенерированные папки bin в моём проекте.

34
ответ дан 27 November 2019 в 21:48
поделиться

В моем случае я работал с некоторым старым кодом веб-сайта, который я преобразовал в решение VS2008. Я столкнулся с той же проблемой.

Для меня исправление заключалось в том, чтобы щелкнуть правой кнопкой мыши проект веб-сайтов в обозревателе решений и выбрать «Преобразовать в веб-приложение». В результате были созданы файлы designer.cs для всех страниц, на которых раньше этих файлов не было.

7
ответ дан 27 November 2019 в 21:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: