有没有一种方法可以检查模型中某个属性的数量?

时间:2020-07-21 13:53:56

标签: c# .net

我有以下模型:

[Key]
public string Id { get; set; }
    
[IsSearchable]
public string Code{ get; set; }
    
[IsSearchable]
public string Name { get; set; }
    
[IsSearchable]
public string Address { get; set; }
    
[IsSearchable]
public string PostCode { get; set; }  
        
[IsFilterable]
public int? Setting{ get; set; }
    
[IsFilterable, IsSortable]
public Location Location { get; set; }

我正在将数据库中的模型与上述模型进行比较,并希望检查数据库模型是否具有相同的属性。有什么方法可以找到特定数量的属性,而不必对其进行硬编码?例如,这是我编写的检查方法:

private bool CheckAttributeEquality(List<PropertyInfo>searchableAttributeProperties,
                   List<PropertyInfo> filterableAttributeProperties,
                   List<PropertyInfo> sortableAttributeProperties,
                   List<PropertyInfo> keyAttributeProperties)
{
    if (searchableAttributeProperties.Count == 4 &&
        filterableAttributeProperties.Count == 2 &&
        sortableAttributeProperties.Count == 1 &&
        keyAttributeProperties.Count == 1)
    {
        return true;
    }

    return false;
}

但是我不想硬编码它们,我想确保它们与模型中的属性匹配?有人可以帮忙吗?

0 个答案:

没有答案