2011-03-21 10 views
0

私のリピータには、テーブルがビルドされており、ロール管理者のユーザーのためだけに列が表示されます。
私はHeaderTemplateとItemTemplateの列を削除する必要があります。
私はデータ論理を使用してブール値になるdb列を追加することができましたが、その後私はSPにユーザーロールを送信する必要があります。データロジックを持たないリピータ条件ビュー

<asp:Repeater ID="TemplatesList" runat="server"> 
    <HeaderTemplate> 
     <table> 
      <tr> 
       <th> 
        # 
       </th> 
       <th> 
        Title 
       </th> 
       <th> 
        Subject 
       </th> 
       <th> 
        &nbsp; 
       </th> 
       <th> 
        &nbsp; 
       </th> 
      </tr> 
    </HeaderTemplate> 
    <ItemTemplate> 
     <tr> 
      <td> 
       <%# Eval("ET_ID")%> 
      </td> 
      <td> 
       <%# Eval("ET_Title")%> 
      </td> 
      <td> 
       <%# Eval("ET_Subject")%> 
      </td> 
      <td> 
       <a href="<%# VirtualPathUtility.ToAbsolute("~/Admin/EmailsTemplates/Delete.aspx?id="+Eval("ET_ID").ToString())%>"> 
        Delete</a> 
      </td> 
      <td> 
       <a href="<%# VirtualPathUtility.ToAbsolute("~/Admin/EmailsTemplates/Edit.aspx?id="+Eval("ET_ID").ToString())%>"> 
        Edit</a> 
      </td> 
     </tr> 
    </ItemTemplate> 
    <FooterTemplate> 
     </table> 
    </FooterTemplate> 
</asp:Repeater> 

答えて

2

あなただけが役割に基づいてコンテンツを選択することができますLoginViewコントロールを使用することができるよりも列を非表示にする場合:

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.loginview.aspx

それはテンプレート

たりすることができます以内に動作するはずですインラインスクリプトを使用してください:

<% if (User.IsInRole("Admin")) { %> 
<td> xxx </td> 
<% } %> 
関連する問題