繁体   English   中英

实体框架字段枚举

[英]Entity Framework Field Enumeration

我正在使用SQL Server 2008作为数据库服务器的VS 2010中开发Silverlight应用程序。 在数据库的某个表中,我有一个AccessLevel字段,该字段可以采用0、1、2等值,每个值对应于访问级别。 例如:-0 =用户,1 =主持人,2 =管理员,3 =超级管理员,等等。AccessLevel作为int存储在数据库中。 在UI中,我希望在DataGrid控件中显示用户列表,该列表可由DataForm控件编辑。 访问级别的名称必须出现在DataGrid以及DataForm上,而不是级别编号上。 我该如何实现? 正在使用实体数据模型和域数据服务。 提前致谢。

您可以定义一个枚举:

public enum AccessLevels
{
    User = 0,
    Moderator,
    Administrator,
    SuperAdministrator
}

然后在您的实体上创建另一个属性,该属性映射到原始访问级别:

public partial class CertainEntity
{
    public AccessLevelEnum AccessLevelValue
    {
        get { return (AccessLevels)AccessLevel; }
        set { AccessLevel = (int)value; }
    }
}

然后,您可以在DataGrids / DataForms中使用此属性。 这是一个例子

您可以编写一个Valueconverter并将其用于数据绑定

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM