如何将数组添加到VS中的实体模型?

问题描述:

我想这样将图像的直方图存储在数据库中。在程序中,直方图表示为双精度数组(恰好为64)如何将数组添加到VS中的实体模型?

什么是将其添加到实体模型的最佳方法是什么? (比添加具有多个双值的复杂类型更好?)

P.S.如果它很重要 - 我计划从实体模型生成我的分贝。

+0

实体你怎么能指望的阵列在你的数据库来表示? – 2010-04-29 13:01:30

+0

@克雷格 - 它并不重要。这是一个概念应用的证明,所以我不关心他的db格式。重要的是,应该很容易从db获取数据到double []数组并返回。二进制数据会很好 - 但我不知道如何将它导入到double []中。 – kyrisu 2010-04-29 14:05:23

使用Int Index和double Value标量属性创建单独的实体'Sample'。

添加从图像到样本的关联:1到很多。

这会给你的图像称为样品导航属性,你可以这样做: -

image.Samples.OrderBy(S => s.Index)。选择(S => s.Value).ToArray ()来恢复数组。

该结构允许您稍后轻松更改值64。

编辑 要创建您可以使用LINQ

var values = histogram.Select((d,i) => new Sample(){Index =i, Value = d}); 
    var image = new Image(){ Samples = values }; 
+0

感谢您的回答。我只关心 - 如何将数据放入实体? (for循环?:/)。在我的数据库中有100个图像会创建6400条记录:/并且我想要为每个图像存储多个直方图。任何想法包括二进制数据可能? – kyrisu 2010-04-29 14:09:38

+0

我添加了一些Linq来向你展示如何创建它。为什么您会担心概念验证应用程序的性能优化?这将足够快,并为设计实体提供了更大的灵活性。 – 2010-04-29 14:18:43