Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.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# 存储数据数组的实体框架_C#_Sql Server_Entity Framework_Data Modeling - Fatal编程技术网

C# 存储数据数组的实体框架

C# 存储数据数组的实体框架,c#,sql-server,entity-framework,data-modeling,C#,Sql Server,Entity Framework,Data Modeling,我首先开始尝试使用实体框架代码,因为它看起来是一种快速启动和运行数据库的好方法。我来自PostgreSQL的背景,它支持表中的数组类型,例如time[]。我的问题有两个方面;SQL Server是否支持数组类型,如果支持,如何在EF中使用它们?如果它们不受支持,那么表示这些数据的替代方法是什么 table Venue openhours time[] 编辑:上面的数组用于存储一周中每一天的不同时间-例如,一个场馆可能在不同的周末到工作日有不同的开放时间。不支持,您需要将您的开放时间存储

我首先开始尝试使用实体框架代码,因为它看起来是一种快速启动和运行数据库的好方法。我来自PostgreSQL的背景,它支持表中的数组类型,例如
time[]
。我的问题有两个方面;SQL Server是否支持数组类型,如果支持,如何在EF中使用它们?如果它们不受支持,那么表示这些数据的替代方法是什么

table Venue
    openhours time[]

编辑:上面的数组用于存储一周中每一天的不同时间-例如,一个场馆可能在不同的周末到工作日有不同的开放时间。

不支持,您需要将您的
开放时间
存储在一个单独的表中(
VenueOpenhours
)使用
场馆
表的外键。

SQL Server不支持数组类型。根据您的示例模式推断,我认为等效的EF POCO如下所示:

public class Venue
{
   public int VenueId { get; set; }
   public DateTime OpenHour { get; set; }
   public DateTime CloseHour { get; set; }
}

查找
场馆
是否在给定时间打开只需要范围查询
场馆。其中(a=>a.OpenHour=time)
。当然,这是一个非常简单的例子。最有可能的情况是,您希望将场地时间存储在另一张桌子中。但我希望这能让你朝着正确的方向前进。

我怀疑这会是一个解决方案,加入7排来获得一个场馆的开放时间看起来很难看。