我正在使用SQL Server 2008作为数据库服务器在VS 2010中开发Silverlight应用程序。在我的数据库中的某个表中,我有一个字段AccessLevel,它可以取0,1,2等值,每个值对应一个访问级别。例如: - 0 =用户,1 =主持人,2 =管理员,3 =超级管理员等.AccessLevel作为int存储在数据库中。在UI中,我希望在DataGrid控件中显示用户列表,该控件可以由DataForm控件进行编辑。访问级别的名称必须出现在DataGrid以及DataForm而不是级别编号上。我怎样才能做到这一点?正在使用实体数据模型和域数据服务。 提前谢谢。
答案 0 :(得分:0)
您可以定义枚举:
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中使用此属性。 Here's an example
答案 1 :(得分:0)
您可以编写Valueconverter并在数据绑定中使用它