Как я могу отображать данные в gridview в веб-форме с помощью httpclient ?
проблема вид сетки не виден в браузере.и обратите внимание на код c# для отображения данных в gridview, какие изменения я должен сделать, чтобы отобразить данные.
Что я уже пробовал:
HttpClient client = new HttpClient(); client.BaseAddress = new Uri(Base_URL); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); StringContent con = new StringContent(JsonConvert.SerializeObject(up), Encoding.UTF8, "application/json"); HttpResponseMessage response = await client.GetAsync("api/UpdateHotelInfoes"+TextBox2.Text); if (response.IsSuccessStatusCode) { string data = await response.Content.ReadAsStringAsync(); //var A= JsonConvert.DeserializeObject<UpdateHotelInfo>(data); // List<UpdateHotelInfo> a = response.Content.ReadAsAsync<List<UpdateHotelInfo>>().Result; var result = JsonConvert.DeserializeObject<List<UpdateHotelInfo>>(data); GridView1.DataSource = result;
ниже приведен код aspx
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns = "False" BackColor="White" BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" CellPadding="4" ForeColor="Black" OnSelectedIndexChanged="GridView1_SelectedIndexChanged"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="HOTEL_NAME" HeaderText="HOTEL_NAME" /> <asp:BoundField DataField="ADDRESS_LINE" HeaderText="ADDRESS_LINE" /> <asp:BoundField DataField="AREA" HeaderText="AREA" /> <asp:BoundField DataField="CITY" HeaderText="CITY" /> <asp:BoundField DataField="POSTAL_CODE" HeaderText="POSTAL_CODE" /> <asp:BoundField DataField="STATE" HeaderText="STATE" /> <asp:BoundField DataField="COUNTRY" HeaderText="COUNTRY" /> <asp:BoundField DataField="PHONE_NUMBER" HeaderText="PHONE_NUMBER" /> <asp:BoundField DataField="LANDLINE" HeaderText="LANDLINE" /> <asp:BoundField DataField="EMAIL_ID" HeaderText="EMAIL_ID" /> <asp:BoundField DataField="WEBSITE" HeaderText="WEBSITE" /> <asp:BoundField DataField="PROPERTY_TYPE" HeaderText="PROPERTY_TYPE" /> <asp:BoundField DataField="PROPERTY_GRADE" HeaderText="PROPERTY_GRADE" /> <asp:BoundField DataField="REGISTRATION" HeaderText="REGISTRATION" /> </Columns> <FooterStyle BackColor="#CCCC99" /> <HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" /> <RowStyle BackColor="#F7F7DE" /> <SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" /> <SortedAscendingCellStyle BackColor="#FBFBF2" /> <SortedAscendingHeaderStyle BackColor="#848384" /> <SortedDescendingCellStyle BackColor="#EAEAD3" /> <SortedDescendingHeaderStyle BackColor="#575357" /> </asp:GridView>
F-ES Sitecore
У нас нет доступа к вашим источникам данных, так как же мы можем знать, в чем проблема? Вам нужно будет использовать отладчик, чтобы пройти через ваш код и изучить переменные и данные, чтобы понять, что происходит не так. Шансы есть " ответ.IsSuccessStatusCode " является ложным, что может быть связано с url-адресом, к которому вы обращаетесь.
"api / UpdateHotelInfoes" +TextBox2. Text
если TextBox2 имеет "привет", то вы звоните
api / UpdateHotelInfoesHello
что, вероятно, неправильно.
saimanisha
позже я упомянул "/", но и он не работает.
shreyal acharya
Проверьте эту ссылку на наличие вашей проблемы
http://aspnettutorials.com/tutorials/database/add-data-to-gridview-from-multiple-tables-in-asp-net-4-0-and-c/
saimanisha
публичный класс UpdateHotelInfoesController : ApiController
{
частная UpdateHotelInfoEntities дБ = новый UpdateHotelInfoEntities();
// GET: api/UpdateHotelInfoes
public IQueryable & lt;updatehotelinfo> GetUpdateHotelInfo()
{
возвращение дБ.UpdateHotelInfo;
}
// GET: api/UpdateHotelInfoes/5
[ResponseType(typeof(UpdateHotelInfo))]
public IHttpActionResult GetUpdateHotelInfo(int id)
{
UpdateHotelInfo updateHotelInfo = дБ.UpdateHotelInfo.Найти(идентификатор);
if (updateHotelInfo = = null)
{
обратный процесс();
}
возврат Ok(updateHotelInfo);
}
это код api с использованием entity framework ..put delete и update методы работают, но я не могу отобразить данные ..запрос к api работает нормально..но как я могу отобразить respose в gridview.
F-ES Sitecore
Ваш метод обновления не возвращает данные. Если обновление прошло успешно, то вам нужно вызвать другой метод, который возвращает данные отеля.
Bryian Tan
Сделать код управления gridview1.Метод databind(); ?
saimanisha
да его там но проблема здесь после того как если условие
если (ответ.IsSuccessStatusCode)
я получаю исключения, такие как формат json, который не может быть преобразован в массив json.
var h = ожидание ответа.Содержание.ReadAsAsync< IEnumerable & lt;updatehotelinfo>>()
up = JsonConvert.DeserializeObject & lt;updatehotelinfo> (h);
GridView1. DataSource = up;
Управления gridview1.Привязку();
Ответ.Write ("alert('данные загружены успешно');");
}
я хочу показать, что здесь что-то не так ... я не понимаю, где мне изменить код..