會員登入、會員專屬網頁、會員修改私人資料,怎麼寫?(#5,障眼法 DataBinding Expression)使用者登入後(新增、刪除、編輯)各種動作的權限
https://dotblogs.com.tw/mis2000lab/2016/05/09/session_login_user_right_databinding_expression_2016
延續以前的範例,改用 DataBinding Expression來做,變得更簡單。
會員登入後,有沒有「編輯」、「刪除」的權限呢?
沿用這篇文章的技巧,可以修改之前的範例:
ASP.NET 如何控制 GridView 中的控制項 (如 Button...) 設定它的屬性,如顯示、啟用等等
https://msdn.microsoft.com/zh-tw/library/mt148509 作者:亂馬客
這個範例可以當成書本「下集」 ASP.NET專題實務(II) / 松崗出版
DataBinding Expression這一章的補充範例
延續前兩篇文章的作法:
沿用範例 UserRight_Login.aspx
先來看看執行成果:
不同的人登入,權限就不同。
下圖的使用者,權限較高,可以「編輯」與「刪除」...............
下圖的使用者,權限較低,只能「編輯」文章而已。
將上圖的 GridView,最左側的命令欄位(CommnadField)轉成樣版
然後,透過 DataBinding Expression來處理就可以了,非常簡單。
<asp:GridView ID="GridView1" runat="server" ...... 省略>
<Columns>
<asp:TemplateField ShowHeader="False">
<EditItemTemplate>
...... 省略
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Edit" Text="編輯" Visible='<%# Session["UpdateRight"].ToString().Equals("Y") %>'></asp:LinkButton>
<asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Delete" Text="刪除" Visible='<%# Session["DeleteRight"].ToString().Equals("Y") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle BackColor="#FFCCFF" />
</asp:TemplateField>
<asp:BoundField DataField="id" HeaderText="id" SortExpression="id" InsertVisible="False" ReadOnly="True" />
...... 後續省略......
沿用這篇文章的技巧:
ASP.NET 如何控制 GridView 中的控制項 (如 Button...) 設定它的屬性,如顯示、啟用等等
https://msdn.microsoft.com/zh-tw/library/mt148509 作者:亂馬客
我將思想傳授他人, 他人之所得,亦無損於我之所有;
猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson
................ facebook社團 https://www.facebook.com/mis2000lab ............................
................ Google+ https://plus.google.com/100202398389206570368/posts ..............
................ YouTube (ASP.NET) 線上教學影片 http://goo.gl/rGLocQ
[遠距教學、教學影片] ASP.NET (Web Form) 課程 上線了!微軟MVP --MIS2000Lab.主講
事先錄製好的影片,並非上課時側錄! 觀看影片時,有如我「一對一」跟您面對面講課。
留言列表