Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 什么ORM可以处理递归_C#_Sql_Sql Server_Orm - Fatal编程技术网

C# 什么ORM可以处理递归

C# 什么ORM可以处理递归,c#,sql,sql-server,orm,C#,Sql,Sql Server,Orm,我使用的是C#ASP.NET,需要在整个应用程序中使用递归。我目前正在使用LINQtoEntities,并在网上进行了广泛的搜索,但找不到执行递归查询的有效方法。我不知道递归将达到多少级别。我有一个类似的问题要解决,我最终编写了一个帮助函数,该函数在我的数据源中递归并返回一个IEnumerable,其中所有项都按顺序排列。然而,在我的例子中,数据源是线性的。如果您的更像是一个树结构,并且必须按层次显示,这将不会真正起作用。我有一个类似的问题需要解决,我最终编写了一个帮助函数,该函数沿数据源递归,

我使用的是C#ASP.NET,需要在整个应用程序中使用递归。我目前正在使用LINQtoEntities,并在网上进行了广泛的搜索,但找不到执行递归查询的有效方法。我不知道递归将达到多少级别。

我有一个类似的问题要解决,我最终编写了一个帮助函数,该函数在我的数据源中递归并返回一个IEnumerable,其中所有项都按顺序排列。然而,在我的例子中,数据源是线性的。如果您的更像是一个树结构,并且必须按层次显示,这将不会真正起作用。

我有一个类似的问题需要解决,我最终编写了一个帮助函数,该函数沿数据源递归,并返回一个IEnumerable,其中按顺序列出了所有项。然而,在我的例子中,数据源是线性的。如果您的更像是一个树结构,并且必须按层次显示,那么这将不会真正起作用。

我不知道您有什么确切的问题,也不知道其他ORM在做什么

我认为NHibernate应该直接解决大部分问题

  • 使用延迟加载:子项被延迟加载。您不需要递归查询之类的东西,这在SQL中是不可能的
  • 延迟加载的导航在两个方向都有效。因此,您可以使用简单的查询从数据库中获取节点并导航到其父节点
  • 在许多情况下,向递归图添加一些额外的冗余是有意义的。例如,对根节点的引用,允许查询到至少有一个节点与条件匹配的树。或节点的深度(其到根的距离)。或者子节点的数量等等。无论您的查询需要什么

我不知道您到底遇到了什么问题,也不知道其他ORM在做什么

我认为NHibernate应该直接解决大部分问题

  • 使用延迟加载:子项被延迟加载。您不需要递归查询之类的东西,这在SQL中是不可能的
  • 延迟加载的导航在两个方向都有效。因此,您可以使用简单的查询从数据库中获取节点并导航到其父节点
  • 在许多情况下,向递归图添加一些额外的冗余是有意义的。例如,对根节点的引用,允许查询到至少有一个节点与条件匹配的树。或节点的深度(其到根的距离)。或者子节点的数量等等。无论您的查询需要什么