Как передать значения на другую страницу из управления повторителем, чтобы показать полную информацию об одной конкретной записи - PullRequest
0 голосов
/ 21 мая 2018

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

     <form id="form1" runat="server">
        <div>

                <asp:Repeater ID="rptrComments"  runat="server" 
             OnItemCommand="rptList_ItemCommand">

               <ItemTemplate>
                    <div id="Container">


            <div id="OverveiwWrapper">
   <table id="TblOverveiw" style="/*border: 1px solid black;*/ width:165PX;  
             height:170PX" >
             <tr>
             <td id="TdTitle"> <%#Eval("IdeaTitle")%></b></td></tr>
            <tr>
              <td id="TdStatus"><%#Eval("IdeaDescription")%></td></tr>
            <tr>
              <td id="TdPrice"><%#Eval("Category")%></td></tr>
            <tr>
    <td id="TdAddress"><%#Eval("Date")%></td></tr>

          </table>
 </div>
          <div id="DescriptionWrapper">
        <p id="PropType">  Property type : <%#Eval("IdeaTitle")%>  </p>
         <p id="PropDescription"  ><%#Eval("Category")%></p>
       <asp:LinkButton  ID="testing"  runat="server" Text="More Details" 
      CommandName="click" CommandArgument='<%#Eval("IdeaTitle")%>' 
        Visible="true" ></asp:LinkButton>
     <asp:DataList ID="DataList1" runat="server"></asp:DataList>
         </div>
           </div>

        </ItemTemplate>
             </asp:Repeater>

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

        protected void rptList_ItemCommand(object sender, CommandEventArgs e)
        {
            if (e.CommandName == "click")
            {
                Session["Data"] = e.CommandArgument.ToString(); 
                Response.Redirect("ViewIdea3.aspx");
            }

        }

1 Ответ

0 голосов
/ 21 мая 2018

Итак, что вы можете сделать, это вместо использования кнопки ссылки с аргументом команды, используйте гиперссылку с параметром href и querystring:

<a href='ViewIdea3.aspx?IdeaId=<%#Eval("ID")'>More Details</a>

Затем в событии ViewIdea3.aspx Page_Load сделайте что-то вроде этого:

if(!IsPostBack && String.IsNullOrEmpty(Request.Querystring["IdeaId"])) {

  //Query database based on IdeaId and once data is fetched populate grid with details
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...