应用程序:Silvelight 4商业应用程序模板+ RIA服务+ C#。 我将aspnet成员资格数据库合并到我的数据库中。 我可以注册用户,登录和注销。
我需要能够从应用程序/客户端UI分配用户角色。 我使用配置工具创建的aspnet成员资格中有3个角色。
我创建了一个额外的表“UserAccess”,其中aspnet_Users表中的 UserId 为 FK ,aspnet_Roles表中的 RoleID 为 FK 和作为PK开始。
使用ADO.net实体数据模型生成的实体。 生成的域服务类使用这些实体。
在服务类文件中,我将“include”关键字添加到
UserAccesses.Include("aspnet_Users").Include("aspnet_Roles");
在元数据文件
中[Include]
public aspnet_Roles aspnet_Roles { get; set; }
[Include]
public aspnet_Users aspnet_Users { get; set; }
因为我有导航属性。
我使用域数据源(RIA控件)并将datagrid拖到我的页面上。 我将角色设置为组合框。 我成功地加载了表,包括用户名和其他表中的rolename。 默认情况下,所有内容都正确显示。
<ComboBoxItem Content="{Binding Path=aspnet_Roles.RoleName, Mode=TwoWay}" />
但是当我点击cell / combobox时,我想加载3个可用角色,以便用户可以编辑/选择并提交更改?我怎样才能做到这一点?
干杯
答案 0 :(得分:0)
您必须加载aspnet_Roles表行并将其绑定到ComboBox。你需要将它存储在一个单独的属性中并像这样绑定它
ItemSource={Binding Path=Roles, Source={StaticResource YourViewModel}}"
干杯! 维诺德