'Локальная переменная с именем' x 'уже определена' в сгенерированном временном файле * .cs после преобразования с 2008 по 2010 - PullRequest
0 голосов
/ 22 июля 2011

Не уверен, что кто-то может помочь здесь, но мы переходим с VS 2008 на 2010 и столкнулись с проблемой компиляции на нашем сайте.

Мы преобразовали проект, который возвратил 0 ошибок преобразования.

При попытке создать веб-сайт (не проект веб-приложения) в сгенерированном файле .cs во временной папке asp.net появляется ошибка с указанием, что локальная переменная x уже определена. Ошибка правильная, переменная объявлена, но я не могу понять, почему генератор кода создал 2 экземпляра одного и того же элемента управления, когда есть только один.

#line default
#line hidden
namespace.to.control.lib controlid;

#line 9 "C:\path\control.ascx"
         controlid = ((namespace.to.control.lib (@__container.FindControl("controlid")));

Приведенная выше строка дублируется, и на 2-й указывает ошибка.

Я очистил временные файлы для всех установленных версий .net - любые другие предложения?

1 Ответ

0 голосов
/ 02 августа 2011

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

Элемент, дублирующийся во временных файлах .net, был вложен в другой элемент управления через внутреннее свойство ITemplate.

[PersistenceMode(PersistenceMode.InnerProperty), TemplateContainer(typeof(MDSL.Web.UI.WebControls.FormView), BindingDirection.TwoWay), TemplateInstance(TemplateInstance.Single)]
[Bindable(true, BindingDirection.TwoWay)]
public ITemplate Template { get; private set; }

Это свойство было украшено TemplateInstance.Single (теряет боль findcontrol и позволяет получить доступ к элементам управления через id из кода позади).

Дублированный элемент управления имел привязку, которая при удалении, казалось, останавливала ошибки, но поскольку привязка была необходима, атрибут свойства был удален, и код был повторно обработан для его поддержки.

SelectedValue='<%# Bind("column") %>'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...