我有一个将图片保存在SQL Server数据库中的C#应用程序。 SQL Server将图片保存在varbinary(max)
类型的列中。该应用程序将byte[]
转换为在我的屏幕上显示图片。SQL Server图片数据库
我想要做的是检查图片是否被添加过。首先是由数据集保存的整个数据库。然后,我试图通过检查图像的字节数组的相等性来比较图片。但它不起作用。因为(取决于我的理解)图片的字节数组(我打算通过openfiledialog添加),与图片的字节数组(即来自数据集)不匹配,即使它们都是相同的图片(同名,相同的位置,相同的大小等)。
这就带出了我的.Net,C#,SQL Server和ado.net学习中更重要的问题。在这种情况下,哪种方式更适合?检查业务层或数据层上的数据存在性? (对不起,我的英文不好)
你是正确的,同一图像的不同表示方式在直接测试中不相同。您需要始终可以比较的图像的一致表示。 Tom Studee提出了这样一种方法(通过之前的文章)。 – DonBoitnott