2012-09-10 9 views
10

さて、強くタイプされたリピータコントロールについていくつかクールなものを探しました...唯一の問題は、うまくいかないことです。私はList<Entry>を持っています。私はちょうどそのデータを表示したい。通常は((Entry)(Container.DataItem))を使用しますが、私が読んだところでは、ItemTypeの型を宣言するだけで済みます。強いタイプのリピータコントロールにItemTypeを使用していますか?

まあ...それは私がやろうとしたことですが、私は何も得ません。私はここで何がうんざりしていますか?

<asp:Repeater ID="UserRptr" ItemType="HROpenEnrollment.Classes.Entry" runat="server"> 
    <ItemTemplate> 
     <ul class="UserList"> 
      <li class="CompoundField"> 
       <%# ???? I can't use Item here. %> 
      </li> 
     </ul> 
    </ItemTemplate> 
</asp:Repeater> 

私のエントリークラスは見つかりませんでした。どうすればそこに入るのですか?別のフォルダ内の同じ名前空間にあります。あなたは以下のように背後にあるコードでデータをバインドする必要が

+0

あなたが読んでいたものへのリンクを提供することはできますか? 'ItemType'は' RepeaterItem'のプロパティであり、 'Repeater'ではありません。 http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.repeateritem.itemtype.aspx – McGarnagle

+1

@dbaseman当初私はhttp://weblogs.asp.net/scottgu/archive/を読んでいました。 2011/09/02/strong-typed-data-controls-asp-net-vnext-series.aspxを参照してください。しかし、Googleの検索後、私は、ModelTypeがItemTypeに改名されたと言われました。この方法を適切に使うにはどうしたらいいですか? – proseidon

+0

わかりませんが、VS 2012/ASP.Net 4.5が必要なようです。あなたと一緒に働いているのですか? – McGarnagle

答えて

19

using (MicroGOVEntities entities = DataEntitiesFactory.GetInstance()) 
{ 
    var getGovernments = from g in entities.S_Government 
         orderby g.DateCreated descending 
         select g; 
    rpData.DataSource = getGovernments.ToList(); 
} 
rpData.DataBind(); 

そして、ASP.NETのコードは次のとおりです。

<asp:Repeater ID="rpData" runat="server" 
       ItemType="MicroGOV.Entity.S_Government" 
       OnItemCommand="rpData_ItemCommand"> 
    <ItemTemplate> 
     <td><%#:Item.GovernmentID %></td> 
    </ItemTemplate> 
</asp:Repeater> 
関連する問題