2012-08-09 34 views
1

我正在使用Linq to Sql查询多个数据库表。在这些表格中,Image数据类型有很好的用处。Linq to SQL Designer:默认情况下使图像类型byte []

当使用DBML设计器时,拖放我的表格,并且在生成类时将使用Image数据类型的任何字段映射为System.Data.Linq.Binary。但是,我希望这些是Byte[]

目前,这是一个手动过程或在设计改变字段类型,并在所有的公平是没有那个时候的事情了规模宏大的消耗,但如果这是为我自动完成,我宁愿。

有没有办法可以做到这一点?某种Linq to Sql设置?

对我来说,主要的烦恼是,当我做,我需要重新添加更改一个表,然后我必须要改变的字段回byte[]

+0

如果将**图像**数据类型更改为** varBinary **? – 2012-08-09 12:15:18

+0

@Mazdak_SH:它不是类型转换的问题,因为在DB和DataContext之间工作正常。但是我需要在客户端使用byte [],我也使用null,这已经被证明是一种痛苦,因为DataContext似乎并不想在数据库中使用二进制存储为空 – musefan 2012-08-09 13:12:45

回答

1

T4 Toolbox具有生成LINQ到模板DBML中容易定制的-SQL类,包括更改默认类型映射。

+0

它看起来很有希望,但看似大量的设置工作让我略微有些困惑。我会坚持下去,看看我是如何获得的 – musefan 2012-08-09 13:28:35

+0

这是一个设置,但如果你不得不改变这些表很多,这可能是值得的。与切换到EF或其他工具相比,它的工作量要少很多。 – 2012-08-09 13:46:18