一些細節斷手:使用NHibernate和Mono的Oracle客戶端Blob 10K限制?
NHibernate : 2.1.2.4000
Oracle Instant client : x64 11.2.0.2.0
Mono : Mono JIT compiler version 2.10.2
目前我掙扎了一下與甲骨文和斑點,從而只斑的10K插入到數據庫中。雖然這在Windows上有效,但在Linux上似乎有些不同。看着sql,每件事情都很好。這裏是截斷的sql語句。
INSERT INTO Voters (Photo) VALUES (:p1);:p1 = 0x424DF627090000000000360000002800000090....
Hibernate映射看起來像如下
和類如下
public partial class Voter : BusinessBase<long>
{
#region Declarations
private byte[] _photo = null;
#endregion
public virtual byte[] Photo
{
get { return _photo; }
set { _photo = value; }
}
}
其中選舉人對象如下
保存外表的代碼Voter entityVoter = Voter.copyFrom(record.TRANSACTION);
IVoterManager managerVoter = ManagerFactory.Instace.GetVoterManager(managerBulkImport.Session);
managerVoter.SaveOrUpdate(entityVoter);
File.WriteAllBytes("/home/user/voter" + entityVoter.Id + ".bmp", entityVoter.Photo);
並且在對象保存後寫入磁盤的映像也是正確的,這使我認爲問題可能與oracle客戶端有關嗎?正如我所說,這個代碼在Windows上工作,除了路徑自然。
任何幫助將不勝感激!
<類名= 「nosuch.BusinessObjects.Voter,nosuch」 表= 「投票人」 懶= 「假」> <發生器類= 「分配」/ > –
nosuch