許多支援帳號登入的 Web 應用程式會根據登入用戶身分提供不同選項、報表與功能。回顧 基於用戶對修改數據進行限制,我們學習如何根據當前用戶動態調整 DetailsView 與 GridView 中的數據修改能力。該範例允許用戶以供應商或員工身分登入:供應商僅能修改自家產品與公司資訊;員工則可修改所有公司的產品與供應商資訊。
注意: 原教程中用戶透過下拉清單選擇存取權限等級登入。ASP.NET 2.0 Membership 系統提供標準且可擴充的用戶帳號建立、管理與驗證平台,但詳細討論超出本章範圍。更多資訊請參考 Examining ASP.NET 2.0's Membership, Roles, and Profile。
我們將學習使用 DataList 根據當前登入用戶顯示數據修改功能。建立一個以可編輯 DataList 列出員工資訊(姓名、職稱、到職日期)的頁面:

圖 1:匿名用戶無法編輯任何 Employee 記錄

圖 2:登入用戶可編輯自身與管理的員工記錄
由於員工管理職位決定可編輯記錄範圍,測試本範例時熟悉 Northwind 組織階層至關重要。請參考圖 3 的階層圖。

圖 3:Northwind 組織階層圖