#c# #.net #asp.net #gridview
#c# #.net #asp.net #просмотр сетки
Вопрос:
Привет, я добавил новое значение Encryptedstatusid в DataNavigateUrlFields, и я получаю сообщение об ошибке «Поле или свойство с именем’eNcryptedStatusId’ не найдено в выбранном источнике данных». но в моем списке действительно есть свойство encryptedstatusid, которое содержит значение, как это решить? ASPX:
<asp:HyperLinkField HeaderText="Status" DataTextField="AppStatus" DataNavigateUrlFields="NavigateUrl,Id,EncrypedStatusId"
SortExpression="AppStatus" DataNavigateUrlFormatString="{0}?Id={1}"></asp:HyperLinkField>
<asp:TemplateField>
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("NavigateUrl","{0}").Replace(":", Server.UrlEncode(":")) %>'
DataTextField="AppStatus"></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
КОД, ЛЕЖАЩИЙ В ОСНОВЕ :
List<DTO> listDto;
IApplication engine;
engine = new Engine();
listDto = engine.ReadHistory(Session["UserID"].ToString());
this.dvHistory.DataSource = listDto;
this.dvHistory.DataBind();
Комментарии:
1.
DataNavigateUrlFormatString
имеет только два, и вы указали 3, я не уверен, приемлемо это или нет2. Возможно,
EncrypedStatusId
недоступно, можете ли вы опубликовать соответствующий код для того же самого?3. Кстати: удалите DataTextField в HyperLink1 и добавьте Text='<%# Eval(«AppStatus») %>’ вместо этого
Ответ №1:
есть ли оно у вас в свойстве gridview datakeynames=[encryptedstatusid, …]
Ответ №2:
Убедитесь, что столбец EncrypedStatusId
column существует в вашем источнике данных.