C# 通用表编辑器/查看器

C# 通用表编辑器/查看器,c#,asp.net,entity-framework,asp.net-core-mvc,entity-framework-core,C#,Asp.net,Entity Framework,Asp.net Core Mvc,Entity Framework Core,我正在尝试使用MVC6、ASP.NET5和EntityFramework7创建一个通用的表查看器/编辑器。我以前在PHP和MySQL后端中做过这项工作,所以我可以很好地可视化大多数事情,最困难的部分是在c#/EF7中做同样的事情 我在这里提出了一个与此相关的问题——这是我目前解决这个问题的尝试 这个问题更像是一个一般性的问题——是否可以创建一个表查看器/编辑器,该查看器/编辑器能够执行与具有搜索/筛选/分页支持的数据表相同的功能。(我在PHP/JS中实现了相同类型的控件,没有任何问题) 据我所知

我正在尝试使用MVC6、ASP.NET5和EntityFramework7创建一个通用的表查看器/编辑器。我以前在PHP和MySQL后端中做过这项工作,所以我可以很好地可视化大多数事情,最困难的部分是在c#/EF7中做同样的事情

我在这里提出了一个与此相关的问题——这是我目前解决这个问题的尝试

这个问题更像是一个一般性的问题——是否可以创建一个表查看器/编辑器,该查看器/编辑器能够执行与具有搜索/筛选/分页支持的数据表相同的功能。(我在PHP/JS中实现了相同类型的控件,没有任何问题)


据我所知,你必须使用C#中的大量反射来实现这一点,因此,我想知道是否有人可以为我指出一个正确的方向,找到一个现有的解决方案或一个新的解决方案。或者,或者,如果这真的不可能-除了检查和编写一百万个switch语句以确保选择了正确的
DbSet
和/或
DbContext

@Micky我目前正在使用
DbContext
DbSet
s,还没有找到任何可以访问动态数据库属性的方法
DbSet
并对其执行LINQ查询。我应该手动编写SQL吗?@Micky,至于“百万开关语句”,这是指我无法访问对象的单个属性,因为它是通用形式。啊,我明白了。是的,我同意。通常,使用EF或nHibernate之类的东西是为了对已知实体类型的类型安全。因为您将是动态的,所以我同意SQL可能是一种方式。或者至少可能是ADO.NET?@Micky,好吧,看起来这就是我必须要做的,除非有人有办法绕过EF做到这一点。:)@Micky我目前正在使用
DbContext
s和
DbSet
s,还没有找到任何方法可以访问动态
DbSet
的属性并对其执行LINQ查询。我应该手动编写SQL吗?@Micky,至于“百万开关语句”,这是指我无法访问对象的单个属性,因为它是通用形式。啊,我明白了。是的,我同意。通常,使用EF或nHibernate之类的东西是为了对已知实体类型的类型安全。因为您将是动态的,所以我同意SQL可能是一种方式。或者至少可能是ADO.NET?@Micky,好吧,看起来这就是我必须要做的,除非有人有办法绕过EF做到这一点。:)