關(guān)于IBatis緩存使用的一個(gè)BUG |
關(guān)于IBatis.Net 版本1.321里面的cacheModel有一個(gè)BUG,好大的。當(dāng)你使用CacheModel 而同時(shí)查詢出來(lái)的結(jié)果是NULL的話,IBatis緩存就會(huì)有問(wèn)題。在IBatis.Net 版本1.32里面一共有3處。 MappedStatements 400行處, 527 行 778行 應(yīng)該改為 ? obj = RunQueryForObject(request, session, parameterObject, resultObject); ?????????????????????????????????? if(obj!=null) ?????????????????????????????????? { ????????????????????????????????????????? _statement.CacheModel[key] = obj; ?????????????????????????????????? } 每一個(gè)緩存前,判斷是否為空。 |