データベースからデータをフェッチする Repeater を含むページ (default.aspx) があります。これは Repeater のレイアウトです。
default.aspx:
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Id","~/fullpost.aspx?Id={0}") %>'><asp:Literal ID="LitTitle" runat="server" Text='<%# Eval("Title") %>'></asp:Literal></asp:HyperLink>
<br />
<span class="textSum">
<asp:Literal ID="LitSummary" runat="server" Text='<%# Eval("Summary") %>'></asp:Literal></span>
<span class="dateTime">
<asp:Literal ID="Literal1" runat="server" Text='<%# Eval("CreateDateTime") %>'></asp:Literal></span>
ハイパーリンクがfullpost.aspxに誘導されていることに注意してください。このページでは、クリックした 1 つの項目のみを表示したいので (URL は右に示され、 fullpost.aspx?Id= IdNumberに移動します)、次のことを試しました。 :
fullpost.aspx:
<asp:Literal ID="Literal1" runat="server" Text='<%# Eval("Title") %>'></asp:Literal>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:orangefreshConnectionString1 %>"
SelectCommand="SELECT [Id], [Title], [Summary], [Body], [CreateDateTime] FROM [Post] WHERE ([Id] = @Id)">
<SelectParameters>
<asp:QueryStringParameter Name="Id" QueryStringField="Id" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
しかし、私のリテラルはタイトルを希望どおりに表示していません。何も表示されません。ここで私は正確に何を間違っていますか?
データ バインド コントロールを追加した後:
<asp:FormView ID="FormView1" runat="server" DataSourceID="SqlDataSource1">
<asp:Literal runat="server" Text='<%# Eval("Title") %>'></asp:Literal>
</asp:FormView>
パーサー エラー メッセージ: タイプ 'System.Web.UI.WebControls.FormView' には 'Literal' という名前のパブリック プロパティがありません。