簡體   English   中英

表列使枚舉和返回值作為字符串

[英]Table column make enum and return values as strings

我有一個帶有(EF)數據庫的ASP.NET WebForms應用程序。

基本上,我關注的兩個表是“用戶”和“角色”。 在角色中,有:ID(pk),用戶ID(fk),類型:字符串-包含管理員,用戶,主持人,發布者等。在用戶中,有:ID(pk),電子郵件,NameFirst,NameLast,密碼,用戶名。

在設計器中,我將用戶與角色連接在一起,以便在角色-> UserId ==用戶ID中使用。

現在,在創建一個從RoleProvider繼承的類之后,在函數GetRolesForUser(string username)中,我想獲取ID為用戶名的用戶的所有角色的枚舉。

因此,例如,如果我有一個用戶Agon,我希望能夠獲取他所有角色的枚舉供以后使用,並在上述方法中將它們作為string []返回。

因此,在經過數小時的麻痹嘗試之后,我一直遇到一致的錯誤。 不知道從這里去哪里:

    public override string[] GetRolesForUser(string username)
    {
        using (SMEntities db = new SMEntities())
        {
            User user = db.Users.First(x => x.Username == username);
        }

        //throw new NotImplementedException();
    }

我不確定枚舉實際上在哪方面起作用,但是以下內容如何:

    using (SMEntities db = new SMEntities())
    {
        User user = db.Users.First(x => x.Username == username);
        return user.Roles.Select(r => r.Type).ToArray();
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM