0

应用程序:Silvelight 4 商业应用程序模板 + RIA 服务 + C#。我将 aspnet 会员数据库合并到我的数据库中。我能够注册用户,登录和注销。

我需要能够从应用程序/客户端 UI 分配用户角色。我使用配置工具创建的 aspnet 成员中有 3 个角色。

我创建了一个额外的表“UserAccess”,其中来自 aspnet_Users 表的UserId为FK,来自 aspnet_Roles 表的 RoleID 为FK Startdate为 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 控件)并将数据网格拖到我的页面上。我将角色设置为组合框。我成功地加载了表,包括其他表中的用户名和角色名。默认情况下,一切都正确显示。

<ComboBoxItem Content="{Binding Path=aspnet_Roles.RoleName, Mode=TwoWay}" />

但是当我单击单元格/组合框时,我想加载 3 个可用角色,以便用户可以编辑/选择和提交更改?我怎样才能做到这一点?

干杯

4

1 回答 1

0

您必须加载 aspnet_Roles 表行并将其绑定到 ComboBox。您需要将其存储在单独的属性中并像这样绑定它

ItemSource={Binding Path=Roles, Source={StaticResource YourViewModel}}"

干杯! 维诺德

于 2012-07-12T04:27:30.430 回答