database – 本地数据库将字节数组截断引发到8000的异常异常

前端之家收集整理的这篇文章主要介绍了database – 本地数据库将字节数组截断引发到8000的异常异常前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试将Map控件中的快照作为WritableBitmap,将其转换为字节数组并将其保存在本地数据库中.它工作正常(我可以将字节数组转换回图像),直到我将更改提交给数据库.此时它会抛出异常“字节数组截断到8000的长度”.我没有找到任何关于字节数组限制的文档.有谁知道如何增加8000的限制?我的字节数组是我的模型的成员:
  1. private byte[] _locationImage;
  2. [Column]
  3. public byte[] LocationImage
  4. {
  5. get { return _locationImage; }
  6. set
  7. {
  8. if (_locationImage != value)
  9. {
  10. NotifyPropertyChanging("LocationImage");
  11. _locationImage = value;
  12. NotifyPropertyChanged("LocationImage");
  13. }
  14. }
  15. }

解决方法

如果你看一下 the SQL Compact docs,你会发现二进制或varbinary字段最多可以是8000字节,这样就可以告诉我byte []列被映射到varbinary.要使它存储大于此数据的数据,您需要让引擎使用图像字段类型.这可能就像更新像这样的Column属性一样简单(未经测试):
  1. [Column(DbType="image")]
  2. public byte[] LocationImage { ... }

猜你在找的MsSQL相关文章