【问题标题】:How can I filter choices out of a drop down list when using Dynamic Data?使用动态数据时,如何从下拉列表中过滤选项?
【发布时间】:2009-10-22 16:16:08
【问题描述】:

我觉得这应该很容易,但我看不出有什么办法。

我正在使用带有 Linq to SQL 的 ASP.NET 动态数据。我有一张与 Technician 表关联的表。父属性是 TechAssignment,在 Web 表单上我使用 DynamicField 来显示它。

这真的很好用,它正确地将其视为 ForeignKeyField 并使用该模板为我提供一个下拉列表,其中包含 Technicians 表中的技术列表。

唯一的问题是它给了我一个所有技术人员的列表,而其中有很多人不活跃。如何让 Dynamic Data 过滤掉不活跃的技术人员,使他们无法被选中?

【问题讨论】:

  • 您是否尝试过使用 SQL 视图而不是直接引用表?不确定这是否适合您的情况。

标签: linq-to-sql dynamic-data asp.net-dynamic-data asp.net-3.5


【解决方案1】:

LINQ to SQL 生成部分类。

  1. 添加新属性(从其他外键属性复制)
  2. 在 get 中应用过滤器(通过 LINQ2SQL 或过滤原始属性)
  3. 绑定到该属性

关联表中的示例 UnapprovedContacts

public partial class Association
{
    public IList<Contact> UnapprovedContacts
    {
        get
        {
            return Contacts.Where(c => !c.IsApproved).ToList();
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-08
    • 2014-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-07
    • 2014-09-02
    相关资源
    最近更新 更多