Skip to main content
A newer version of this page is available. .

Criteria Properties in Entity Framework

  • 2 minutes to read

The example below illustrates how to implement Criteria Properties in an Entity Framework Code First class.

[Browsable(false)]
public string DataTypeName {
    get { return fDataType == null ? string.Empty : fDataType.FullName; }
    set {
        ITypeInfo typeInfo = XafTypesInfo.Instance.FindTypeInfo(value);
        fDataType = typeInfo == null ? null : typeInfo.Type;
    }
}
private Type fDataType;
[NotMapped, ImmediatePostData]
public Type DataType {
    get { return fDataType; }
    set {
        if (fDataType == value) return;
        fDataType = value;
        Criteria = string.Empty;
                   CriteriaInPopupWindow = string.Empty;
    }
}
[CriteriaOptions("DataType")]
[FieldSize(FieldSizeAttribute.Unlimited)]
[ObjectValidatorIgnoreIssue(typeof(ObjectValidatorLargeNonDelayedMember))]
[VisibleInListView(true)]
[EditorAlias(EditorAliases.CriteriaPropertyEditor)]
public string Criteria { get; set; }

[CriteriaOptions("DataType")]
[FieldSize(FieldSizeAttribute.Unlimited)]
[ObjectValidatorIgnoreIssue(typeof(ObjectValidatorLargeNonDelayedMember))]
[VisibleInListView(true)]
[EditorAlias(EditorAliases.PopupCriteriaPropertyEditor)]
public string CriteriaInPopupWindow { get; set; }