<html> <head> <META http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Committing Event Example</title> <link rel="stylesheet" type="text/css" href="../../../../style.css"> </head> <body> <div class="CommonContent"> <div class="CommonContentArea"> <h1>Committing Event Example</h1><script> //We attach this function to a browser object as a variable so that if multiple of these blocks are //present on the same page, then they will simply over-write eachother with the same function instead //of generating a naming collision. window.WikiCodeFormattingCopyToClipboard = function copyToClipboard(sID){ var sContent = document.getElementById(sID).innerText; if( window.clipboardData && clipboardData.setData ) { clipboardData.setData("Text", sContent); } else { alert("You must enable javascript access to your clipboard for this feature to work. Please referr to your browser documentation or Google search for instructions."); } } </script> <p>Let's look at an example of <code>committing</code> event usage. In this example <code>committing</code> callback will be used to ensure that only unique objects can be saved to the database. Duplicate objects - objects, which have the same fields - will cause an exception at the commit time.</p> <p>We will use a simple Item class for an example:</p> <span name="cs_wiki_filter" csw_filters="cs"> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">Item.cs</span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Open_Text').style.display='inline';"/><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">/**/</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_0_67_Open_Text"><span style="color: #008000;">/*</span><span style="color: #008000;"> Copyright (C) 2004 - 2007 db4objects Inc. </span><span style="color: #008000; text-decoration: underline;">http://www.db4o.com</span><span style="color: #008000;"> </span><span style="color: #008000;">*/</span></span><span style="color: #000000;"> </span><span style="color: #008080;">02</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/></span><span style="color: #0000FF;">namespace</span><span style="color: #000000;"> Db4objects.Db4odoc.CommitCallbacks </span><span style="color: #008080;">03</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Open_Text').style.display='inline';"/></span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_113_681_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">class</span><span style="color: #000000;"> Item </span><span style="color: #008080;">05</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_141_679_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">int</span><span style="color: #000000;"> _number; </span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">string</span><span style="color: #000000;"> _word; </span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> Item(</span><span style="color: #0000FF;">int</span><span style="color: #000000;"> number, </span><span style="color: #0000FF;">string</span><span style="color: #000000;"> word) </span><span style="color: #008080;">10</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_256_323_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> _number </span><span style="color: #000000;">=</span><span style="color: #000000;"> number; </span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> _word </span><span style="color: #000000;">=</span><span style="color: #000000;"> word; </span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">15</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">string</span><span style="color: #000000;"> Word </span><span style="color: #008080;">16</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_360_445_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">17</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">get</span><span style="color: #000000;"> </span><span style="color: #008080;">18</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_390_435_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">19</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">return</span><span style="color: #000000;"> _word; </span><span style="color: #008080;">20</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">21</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">22</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">23</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">int</span><span style="color: #000000;"> Number </span><span style="color: #008080;">24</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_481_568_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">25</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">get</span><span style="color: #000000;"> </span><span style="color: #008080;">26</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_511_558_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">27</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">return</span><span style="color: #000000;"> _number; </span><span style="color: #008080;">28</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">29</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">30</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">31</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">override</span><span style="color: #000000;"> </span><span style="color: #0000FF;">string</span><span style="color: #000000;"> ToString() </span><span style="color: #008080;">32</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsItem.Cs_Item.Cs_423_43_620_673_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">33</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">return</span><span style="color: #000000;"> _number </span><span style="color: #000000;">+</span><span style="color: #000000;"> </span><span style="color: #800000;">"</span><span style="color: #800000;">/</span><span style="color: #800000;">"</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> _word; </span><span style="color: #008080;">34</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">35</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">36</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/>}</span></span></div></pre></div></div> </span> <span name="cs_wiki_filter" csw_filters="vb"> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">Item.vb</span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/><span style="color: #008000;">'</span><span style="color: #008000;"> Copyright (C) 2007 db4objects Inc. http://www.db4o.com</span><span style="color: #008000;"> </span><span style="color: #008080;">02</span><span style="color: #008000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Open_Text').style.display='inline';"/></span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Namespace Db4objects</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_57_778_Open_Text"><span style="color: #0000FF;">Namespace</span><span style="color: #000000;"> Db4objects.Db4odoc.CommitCallbacks </span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">04</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Open_Text').style.display='inline';"/> </span><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Class Item</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_114_764_Open_Text"><span style="color: #0000FF;">Class</span><span style="color: #000000;"> Item </span><span style="color: #008080;">05</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Private</span><span style="color: #000000;"> _number </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Integer</span><span style="color: #000000;"> </span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Private</span><span style="color: #000000;"> _word </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">String</span><span style="color: #000000;"> </span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">08</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Open_Text').style.display='inline';"/> </span><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub New()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_208_332_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;">(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> number </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Integer</span><span style="color: #000000;">, </span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> word </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">String</span><span style="color: #000000;">) </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> _number </span><span style="color: #000000;">=</span><span style="color: #000000;"> number </span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> _word </span><span style="color: #000000;">=</span><span style="color: #000000;"> word </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Sub</span></span><span style="color: #000000;"> </span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">13</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Open_Text').style.display='inline';"/> </span><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">ReadOnly</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Property Word()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_358_469_Open_Text"><span style="color: #0000FF;">Property</span><span style="color: #000000;"> Word() </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">String</span><span style="color: #000000;"> </span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Get</span><span style="color: #000000;"> </span><span style="color: #008080;">15</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Return</span><span style="color: #000000;"> _word </span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Get</span><span style="color: #000000;"> </span><span style="color: #008080;">17</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Property</span></span><span style="color: #000000;"> </span><span style="color: #008080;">18</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">19</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Open_Text').style.display='inline';"/> </span><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">ReadOnly</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Property Number()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_495_611_Open_Text"><span style="color: #0000FF;">Property</span><span style="color: #000000;"> Number() </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Integer</span><span style="color: #000000;"> </span><span style="color: #008080;">20</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Get</span><span style="color: #000000;"> </span><span style="color: #008080;">21</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Return</span><span style="color: #000000;"> _number </span><span style="color: #008080;">22</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Get</span><span style="color: #000000;"> </span><span style="color: #008080;">23</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Property</span></span><span style="color: #000000;"> </span><span style="color: #008080;">24</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">25</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Open_Text').style.display='inline';"/> </span><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Overloads</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Overrides</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Function ToString()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsItem.Vb_Item.Vb_530_43_648_750_Open_Text"><span style="color: #0000FF;">Function</span><span style="color: #000000;"> ToString() </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">String</span><span style="color: #000000;"> </span><span style="color: #008080;">26</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Return</span><span style="color: #000000;"> _number.ToString() </span><span style="color: #000000;">+</span><span style="color: #000000;"> </span><span style="color: #800000;">"</span><span style="color: #800000;">/</span><span style="color: #800000;">"</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> _word </span><span style="color: #008080;">27</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Function</span></span><span style="color: #000000;"> </span><span style="color: #008080;">28</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Class</span></span><span style="color: #000000;"> </span><span style="color: #008080;">29</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/></span><span style="color: #0000FF;">End Namespace</span></span></div></pre></div></div> </span> <p>The following methods will configure a commit-time callback method for uniqueness check:</p> <span name="cs_wiki_filter" csw_filters="cs"> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.cs: <span class="fscMemberName">Configure</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/><span style="color: #0000FF;">private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">static</span><span style="color: #000000;"> </span><span style="color: #0000FF;">void</span><span style="color: #000000;"> Configure() </span><span style="color: #008080;">02</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_40_539_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> IEventRegistry registry </span><span style="color: #000000;">=</span><span style="color: #000000;"> EventRegistryFactory.ForObjectContainer(Container()); </span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> register an event handler, which will check object uniqueness on commit</span><span style="color: #008000;"> </span><span style="color: #008080;">05</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> registry.Committing </span><span style="color: #000000;">+=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> CommitEventHandler(</span><span style="color: #0000FF;">delegate</span><span style="color: #000000;">(</span><span style="color: #0000FF;">object</span><span style="color: #000000;"> sender, CommitEventArgs args) </span><span style="color: #008080;">06</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_Configure_742_70_337_527_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> uniqueness should be checked for both added and updated objects</span><span style="color: #008000;"> </span><span style="color: #008080;">08</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> CheckUniqueness(args.Added); </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> CheckUniqueness(args.Updated); </span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;">); </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> }</span></span></div></pre></div></div> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.cs: <span class="fscMemberName">CheckUniqueness</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/><span style="color: #0000FF;">private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">static</span><span style="color: #000000;"> </span><span style="color: #0000FF;">void</span><span style="color: #000000;"> CheckUniqueness(IObjectInfoCollection collection) </span><span style="color: #008080;">02</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_78_628_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">foreach</span><span style="color: #000000;"> (IObjectInfo info </span><span style="color: #0000FF;">in</span><span style="color: #000000;"> collection) </span><span style="color: #008080;">04</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_145_618_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">05</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> only check for Item objects</span><span style="color: #008000;"> </span><span style="color: #008080;">06</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> Item item </span><span style="color: #000000;">=</span><span style="color: #000000;"> info.GetObject() </span><span style="color: #0000FF;">as</span><span style="color: #000000;"> Item; </span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">if</span><span style="color: #000000;"> (item </span><span style="color: #000000;">==</span><span style="color: #000000;"> </span><span style="color: #0000FF;">null</span><span style="color: #000000;">) </span><span style="color: #0000FF;">continue</span><span style="color: #000000;">; </span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> search for objects with the same fields in the database</span><span style="color: #008000;"> </span><span style="color: #008080;">10</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> IObjectSet found </span><span style="color: #000000;">=</span><span style="color: #000000;"> Container().Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Item(item.Number, item.Word)); </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">if</span><span style="color: #000000;"> (found.Count </span><span style="color: #000000;">></span><span style="color: #000000;"> </span><span style="color: #800080;">1</span><span style="color: #000000;">) </span><span style="color: #008080;">12</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_CheckUniqueness_816_76_507_604_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">throw</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Db4oException(</span><span style="color: #800000;">"</span><span style="color: #800000;">Object is not unique: </span><span style="color: #800000;">"</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> item); </span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">15</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> }</span></span></div></pre></div></div> </span> <span name="cs_wiki_filter" csw_filters="vb"> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.vb: <span class="fscMemberName">Configure</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">1</span><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub Configure()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_Configure_956_70_15_295_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> Configure() </span><span style="color: #008080;">2</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> registry </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IEventRegistry </span><span style="color: #000000;">=</span><span style="color: #000000;"> EventRegistryFactory.ForObjectContainer(Container) </span><span style="color: #008080;">3</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">'</span><span style="color: #008000;"> register an event handler, which will check object uniqueness on commit</span><span style="color: #008000;"> </span><span style="color: #008080;">4</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> </span><span style="color: #0000FF;">AddHandler</span><span style="color: #000000;"> registry.Committing, </span><span style="color: #0000FF;">AddressOf</span><span style="color: #000000;"> OnCommitting </span><span style="color: #008080;">5</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Sub</span></span></div></pre></div></div> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.vb: <span class="fscMemberName">OnCommitting</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">1</span><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub OnCommitting()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_OnCommitting_1030_73_15_262_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> OnCommitting(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> sender </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Object</span><span style="color: #000000;">, </span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> args </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> CommitEventArgs) </span><span style="color: #008080;">2</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">'</span><span style="color: #008000;"> uniqueness should be checked for both added and updated objects</span><span style="color: #008000;"> </span><span style="color: #008080;">3</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> CheckUniqueness(args.Added) </span><span style="color: #008080;">4</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> CheckUniqueness(args.Updated) </span><span style="color: #008080;">5</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Sub</span></span></div></pre></div></div> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.vb: <span class="fscMemberName">CheckUniqueness</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub CheckUniqueness()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_CheckUniqueness_1109_76_15_802_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> CheckUniqueness(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> collection </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectInfoCollection) </span><span style="color: #008080;">02</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">For</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Each</span><span style="color: #000000;"> info </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectInfo </span><span style="color: #0000FF;">In</span><span style="color: #000000;"> collection </span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">'</span><span style="color: #008000;"> only check for Item objects</span><span style="color: #008000;"> </span><span style="color: #008080;">04</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> </span><span style="color: #0000FF;">If</span><span style="color: #000000;"> (</span><span style="color: #0000FF;">TypeOf</span><span style="color: #000000;"> info.GetObject() </span><span style="color: #0000FF;">Is</span><span style="color: #000000;"> Item) </span><span style="color: #0000FF;">Then</span><span style="color: #000000;"> </span><span style="color: #008080;">05</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> item </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">CType</span><span style="color: #000000;">(info.GetObject, Item) </span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">If</span><span style="color: #000000;"> item </span><span style="color: #0000FF;">Is</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Nothing</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Then</span><span style="color: #000000;"> </span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Continue</span><span style="color: #000000;"> </span><span style="color: #0000FF;">For</span><span style="color: #000000;"> </span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">If</span><span style="color: #000000;"> </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">'</span><span style="color: #008000;"> search for objects with the same fields in the database</span><span style="color: #008000;"> </span><span style="color: #008080;">10</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> found </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectSet </span><span style="color: #000000;">=</span><span style="color: #000000;"> Container.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Item(item.Number, item.Word)) </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">If</span><span style="color: #000000;"> found.Count </span><span style="color: #000000;">></span><span style="color: #000000;"> </span><span style="color: #800080;">1</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Then</span><span style="color: #000000;"> </span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Throw</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Db4oException(</span><span style="color: #800000;">"</span><span style="color: #800000;">Object is not unique: </span><span style="color: #800000;">"</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> item.ToString()) </span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">If</span><span style="color: #000000;"> </span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">If</span><span style="color: #000000;"> </span><span style="color: #008080;">15</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Next</span><span style="color: #000000;"> </span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Sub</span></span></div></pre></div></div> </span> <p>let's save one initial object <code>Item(1,"one")</code></p> <span name="cs_wiki_filter" csw_filters="cs"> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.cs: <span class="fscMemberName">StoreFirstObject</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/><span style="color: #0000FF;">private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">static</span><span style="color: #000000;"> </span><span style="color: #0000FF;">void</span><span style="color: #000000;"> StoreFirstObject() </span><span style="color: #008080;">02</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_47_532_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> IObjectContainer container </span><span style="color: #000000;">=</span><span style="color: #000000;"> Container(); </span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">try</span><span style="color: #000000;"> </span><span style="color: #008080;">05</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_131_365_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> creating and storing item1 to the database</span><span style="color: #008000;"> </span><span style="color: #008080;">07</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> Item item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Item(</span><span style="color: #800080;">1</span><span style="color: #000000;">, </span><span style="color: #800000;">"</span><span style="color: #800000;">one</span><span style="color: #800000;">"</span><span style="color: #000000;">); </span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Set(item); </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> no problems here</span><span style="color: #008000;"> </span><span style="color: #008080;">10</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> container.Commit(); </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">catch</span><span style="color: #000000;"> (Db4oException ex) </span><span style="color: #008080;">13</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreFirstObject_1321_77_415_522_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> System.Console.WriteLine(ex.Message); </span><span style="color: #008080;">15</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Rollback(); </span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">17</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> }</span></span></div></pre></div></div> </span> <span name="cs_wiki_filter" csw_filters="vb"> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.vb: <span class="fscMemberName">StoreFirstObject</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub StoreFirstObject()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreFirstObject_1462_77_15_524_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> StoreFirstObject() </span><span style="color: #008080;">02</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> container </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> CommitCallbackExample.Container() </span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Try</span><span style="color: #000000;"> </span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">'</span><span style="color: #008000;"> end creating and storing item1 to the database</span><span style="color: #008000;"> </span><span style="color: #008080;">05</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> item </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Item(</span><span style="color: #800080;">1</span><span style="color: #000000;">, </span><span style="color: #800000;">"</span><span style="color: #800000;">one</span><span style="color: #800000;">"</span><span style="color: #000000;">) </span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Set(item) </span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">'</span><span style="color: #008000;"> no problems here</span><span style="color: #008000;"> </span><span style="color: #008080;">08</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> container.Commit() </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Catch</span><span style="color: #000000;"> ex </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Db4oException </span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> System.Console.WriteLine(ex.Message) </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Rollback() </span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Try</span><span style="color: #000000;"> </span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Sub</span></span></div></pre></div></div> </span> <p>Now we can check the functionality of the <code>committing</code> callback using the following code:</p> <span name="cs_wiki_filter" csw_filters="cs"> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.cs: <span class="fscMemberName">StoreOtherObjects</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/None.gif" align="top"/><span style="color: #0000FF;">private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">static</span><span style="color: #000000;"> </span><span style="color: #0000FF;">void</span><span style="color: #000000;"> StoreOtherObjects() </span><span style="color: #008080;">02</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_48_1140_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> IObjectContainer container </span><span style="color: #000000;">=</span><span style="color: #000000;"> Container(); </span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> creating and storing similar items to the database</span><span style="color: #008000;"> </span><span style="color: #008080;">05</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> Item item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Item(</span><span style="color: #800080;">2</span><span style="color: #000000;">, </span><span style="color: #800000;">"</span><span style="color: #800000;">one</span><span style="color: #800000;">"</span><span style="color: #000000;">); </span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Set(item); </span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Item(</span><span style="color: #800080;">1</span><span style="color: #000000;">, </span><span style="color: #800000;">"</span><span style="color: #800000;">two</span><span style="color: #800000;">"</span><span style="color: #000000;">); </span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Set(item); </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">try</span><span style="color: #000000;"> </span><span style="color: #008080;">10</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_347_471_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> commit should work as there were no duplicate objects</span><span style="color: #008000;"> </span><span style="color: #008080;">12</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> container.Commit(); </span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">catch</span><span style="color: #000000;"> (Db4oException ex) </span><span style="color: #008080;">15</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_521_628_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> System.Console.WriteLine(ex.Message); </span><span style="color: #008080;">17</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Rollback(); </span><span style="color: #008080;">18</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">19</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> System.Console.WriteLine(</span><span style="color: #800000;">"</span><span style="color: #800000;">Commit successful</span><span style="color: #800000;">"</span><span style="color: #000000;">); </span><span style="color: #008080;">20</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008080;">21</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> trying to save a duplicate object to the database</span><span style="color: #008000;"> </span><span style="color: #008080;">22</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Item(</span><span style="color: #800080;">1</span><span style="color: #000000;">, </span><span style="color: #800000;">"</span><span style="color: #800000;">one</span><span style="color: #800000;">"</span><span style="color: #000000;">); </span><span style="color: #008080;">23</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Set(item); </span><span style="color: #008080;">24</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">try</span><span style="color: #000000;"> </span><span style="color: #008080;">25</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_854_973_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">26</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #008000;">//</span><span style="color: #008000;"> Commit should fail as duplicates are not allowed</span><span style="color: #008000;"> </span><span style="color: #008080;">27</span><span style="color: #008000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/></span><span style="color: #000000;"> container.Commit(); </span><span style="color: #008080;">28</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">29</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">catch</span><span style="color: #000000;"> (Db4oException ex) </span><span style="color: #008080;">30</span><span style="color: #000000;"><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Open_Text').style.display='inline';"/> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksCS.ZipsCommitCallbackExample.Cs_CommitCallbackExample.Cs_StoreOtherObjects_1720_78_1023_1130_Open_Text"><span style="color: #000000;">{ </span><span style="color: #008080;">31</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> System.Console.WriteLine(ex.Message); </span><span style="color: #008080;">32</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Rollback(); </span><span style="color: #008080;">33</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"/> }</span></span><span style="color: #000000;"> </span><span style="color: #008080;">34</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> }</span></span></div></pre></div></div> </span> <span name="cs_wiki_filter" csw_filters="vb"> <div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CommitCallbackExample.vb: <span class="fscMemberName">StoreOtherObjects</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78"><div><!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><span style="color: #008080;">01</span><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Open_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Closed_Image" src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Private</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub StoreOtherObjects()</span><span id="ResourcesReferenceImplementation_StrategiesCallbacksCommit-Time_CallbacksCommitCallbacksVB.ZipsCommitCallbackExample.Vb_CommitCallbackExample.Vb_StoreOtherObjects_1860_78_15_814_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> StoreOtherObjects() </span><span style="color: #008080;">02</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> container </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> CommitCallbackExample.Container() </span><span style="color: #008080;">03</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> item </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Item(</span><span style="color: #800080;">2</span><span style="color: #000000;">, </span><span style="color: #800000;">"</span><span style="color: #800000;">one</span><span style="color: #800000;">"</span><span style="color: #000000;">) </span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Set(item) </span><span style="color: #008080;">05</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Item(</span><span style="color: #800080;">1</span><span style="color: #000000;">, </span><span style="color: #800000;">"</span><span style="color: #800000;">two</span><span style="color: #800000;">"</span><span style="color: #000000;">) </span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Set(item) </span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Try</span><span style="color: #000000;"> </span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Commit() </span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Catch</span><span style="color: #000000;"> ex </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Db4oException </span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> System.Console.WriteLine(ex.Message) </span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Rollback() </span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Try</span><span style="color: #000000;"> </span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> System.Console.WriteLine(</span><span style="color: #800000;">"</span><span style="color: #800000;">Commit successful</span><span style="color: #800000;">"</span><span style="color: #000000;">) </span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> item </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Item(</span><span style="color: #800080;">1</span><span style="color: #000000;">, </span><span style="color: #800000;">"</span><span style="color: #800000;">one</span><span style="color: #800000;">"</span><span style="color: #000000;">) </span><span style="color: #008080;">15</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Set(item) </span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Try</span><span style="color: #000000;"> </span><span style="color: #008080;">17</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Commit() </span><span style="color: #008080;">18</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">Catch</span><span style="color: #000000;"> ex </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Db4oException </span><span style="color: #008080;">19</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> System.Console.WriteLine(ex.Message) </span><span style="color: #008080;">20</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> container.Rollback() </span><span style="color: #008080;">21</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/> </span><span style="color: #0000FF;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Try</span><span style="color: #000000;"> </span><span style="color: #008080;">22</span><span style="color: #000000;"><img src="../../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/> </span><span style="color: #0000FF;">End Sub</span></span></div></pre></div></div> </span></div> </div> <div id="footer"> This revision (5) was last Modified 2007-09-15T18:15:56 by Tetyana. </div> </body> </html>