Sophie

Sophie

distrib > Fedora > 14 > i386 > by-pkgid > 864d1c3c3cd8df4e3a2692faf8776e05 > files > 394

db4o-doc-7.4-2.fc13.i686.rpm

<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;">&quot;</span><span style="color: #800000;">/</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">/</span><span style="color: #800000;">&quot;</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;">&gt;</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;">&quot;</span><span style="color: #800000;">Object is not unique: </span><span style="color: #800000;">&quot;</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;">&gt;</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;">&quot;</span><span style="color: #800000;">Object is not unique: </span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">one</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">one</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">one</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">two</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">Commit successful</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">one</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">one</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">two</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">Commit successful</span><span style="color: #800000;">&quot;</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;">&quot;</span><span style="color: #800000;">one</span><span style="color: #800000;">&quot;</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>