在实体框架中不受约束地获取表's列名

本文关键字:列名 获取 框架 实体 不受约束 | 更新日期: 2023-09-27 18:11:22

使用实体框架,我怎么能得到SQL表列名只属于该表即没有它的外键约束?

这是我的模型:
 public int ID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public Nullable<byte> Age { get; set; }
    public string Address { get; set; }
    public string Gender { get; set; }
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
    public virtual ICollection<EmployeeQualification> EmployeeQualifications { get; set; }

我使用下面的代码片段来获取列名,但它返回Model

中的所有属性
var names = typeof(EmployeeMaster).GetProperties()
                    .Select(property => property.Name)
                    .ToArray();

在实体框架中不受约束地获取表's列名

试试这个:

var names = typeof(EmployeeMaster).GetProperties()
              .Where(x => x.PropertyType.IsValueType || x.PropertyType == typeof(string))
              .Select(property => property.Name)
              .ToArray();