0
我們在某些屬性映射使用自定義類型(IUserType)數據庫中的數據進行加密,而我們使用監聽器(IPostUpdateEventListener,IPostDeleteEventListener,IPostInsertEventListener)登錄一些實體的變化,其所有基地的實體屬性以決定是否需要記錄日誌。問題是加密屬性沒有加密記錄。如何識別監聽器中的屬性自定義類型?
有沒有辦法,用IEntityPersister或其他來源,來識別巫婆屬性是否加密(使用我們的自定義類型)或不?
private string GetValue(ISession session, object[] stateArray, int index, IEntityPersister persister)
{
try
{
return stateArray[index] == null || stateArray[index].ToString() == string.Empty
? "< No value >"
: stateArray[index].ToString();
}
catch (Exception e)
{
Trace.Write(string.Format("Error \"{0}[{1}]\": {2}", persister.EntityName, persister.PropertyTypes[index],
e));
return "< No value >";
}
}
...
public void OnPostInsert(PostInsertEvent @event)
{
var res = GetValue(session, @event.State, i, @event.Persister);
...
你應該使用'string.IsNullOrEmpty(stateArray [指數])' –
它是對象 – maiconmm
真正的數組!對不起:/ –