Sophie

Sophie

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

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

<html>
  <head>
    <META http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Embedded</title>
    <link rel="stylesheet" type="text/css" href="../../style.css">
  </head>
  <body>
    <div class="CommonContent">
      <div class="CommonContentArea">
        <h1>Embedded</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>From the API side, there's no real difference between transactions executing concurrently within the same VM and transactions executed against a remote server. To use concurrent transactions within a single VM, we just open a db4o server on our database file, directing it to run on port 0, thereby declaring that no networking will take place.</p>

<span name="cs_wiki_filter" csw_filters="cs">
<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">ClientServerExample.cs: <span class="fscMemberName">AccessLocalServer</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73"><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;"> AccessLocalServer()
</span><span style="color: #008080;">02</span><span style="color: #000000;"><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Open_Text').style.display='inline';"/>    </span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_42_302_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"/>      IObjectServer server </span><span style="color: #000000;">=</span><span style="color: #000000;"> Db4oFactory.OpenServer(Db4oFileName, </span><span style="color: #800080;">0</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: #0000FF;">try</span><span style="color: #000000;">
</span><span style="color: #008080;">05</span><span style="color: #000000;"><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Open_Text').style.display='inline';"/>      </span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_121_257_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"/>        IObjectContainer client </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient();
</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;"> Do something with this client, or open more clients</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;">        client.Close();
</span><span style="color: #008080;">09</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;">10</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      </span><span style="color: #0000FF;">finally</span><span style="color: #000000;">
</span><span style="color: #008080;">11</span><span style="color: #000000;"><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Open_Text').style.display='inline';"/>      </span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_AccessLocalServer_406_73_272_298_Open_Text"><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"/>        server.Close();
</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/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">ClientServerExample.vb: <span class="fscMemberName">AccessLocalServer</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73"><div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><span style="color: #008080;">01</span><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub AccessLocalServer()</span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_AccessLocalServer_537_73_14_392_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> AccessLocalServer()
</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;"> server </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectServer </span><span style="color: #000000;">=</span><span style="color: #000000;"> Db4oFactory.OpenServer(Db4oFileName, </span><span style="color: #800080;">0</span><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;">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: #0000FF;">Dim</span><span style="color: #000000;"> client </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient()
</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;"> Do something with this client, or open more clients</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;">                client.Close()
</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;">Finally</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"/>                server.Close()
</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;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Try</span><span style="color: #000000;">
</span><span style="color: #008080;">10</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>Again, we will delegate opening and closing the server to our environment to focus on client interactions.</p>

<span name="cs_wiki_filter" csw_filters="cs">
<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">ClientServerExample.cs: <span class="fscMemberName">QueryLocalServer</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72"><div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><span style="color: #008080;">1</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;"> QueryLocalServer(IObjectServer server)
</span><span style="color: #008080;">2</span><span style="color: #000000;"><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Open_Text').style.display='inline';"/>    </span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_QueryLocalServer_785_72_61_177_Open_Text"><span style="color: #000000;">{
</span><span style="color: #008080;">3</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      IObjectContainer client </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient();
</span><span style="color: #008080;">4</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      ListResult(client.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">null</span><span style="color: #000000;">)));
</span><span style="color: #008080;">5</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      client.Close();
</span><span style="color: #008080;">6</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">ClientServerExample.vb: <span class="fscMemberName">QueryLocalServer</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72"><div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><span style="color: #008080;">1</span><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub QueryLocalServer()</span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_QueryLocalServer_915_72_14_226_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> QueryLocalServer(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> server </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectServer)
</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;"> client </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient()
</span><span style="color: #008080;">3</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            ListResult(client.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">Nothing</span><span style="color: #000000;">)))
</span><span style="color: #008080;">4</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            client.Close()
</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>
</span>
<p>The transaction level in db4o is <i>read committed</i>. However, each client container maintains its own weak reference cache of already known objects. To make all changes committed by other clients immediately, we have to explicitly refresh known objects from the server. We will delegate this task to a specialized version of our listResult() method.</p>

<span name="cs_wiki_filter" csw_filters="cs">
<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">ClientServerExample.cs: <span class="fscMemberName">ListRefreshedResult</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75"><div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><span style="color: #008080;">1</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;"> ListRefreshedResult(IObjectContainer container, IObjectSet items, </span><span style="color: #0000FF;">int</span><span style="color: #000000;"> depth)
</span><span style="color: #008080;">2</span><span style="color: #000000;"><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Open_Text').style.display='inline';"/>    </span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_99_269_Open_Text"><span style="color: #000000;">{
</span><span style="color: #008080;">3</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      System.Console.WriteLine(items.Count);
</span><span style="color: #008080;">4</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;"> (</span><span style="color: #0000FF;">object</span><span style="color: #000000;"> item </span><span style="color: #0000FF;">in</span><span style="color: #000000;"> items)
</span><span style="color: #008080;">5</span><span style="color: #000000;"><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Open_Text').style.display='inline';"/>      </span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_ListRefreshedResult_1408_75_180_265_Open_Text"><span style="color: #000000;">{  
</span><span style="color: #008080;">6</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>        container.Ext().Refresh(item, depth);
</span><span style="color: #008080;">7</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>        System.Console.WriteLine(item);
</span><span style="color: #008080;">8</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;">9</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">ClientServerExample.vb: <span class="fscMemberName">ListRefreshedResult</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75"><div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><span style="color: #008080;">1</span><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub ListRefreshedResult()</span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_ListRefreshedResult_1541_75_14_339_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> ListRefreshedResult(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> container </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer, </span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> items </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectSet, </span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> depth </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;">2</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            Console.WriteLine(items.Count)
</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: #0000FF;">For</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Each</span><span style="color: #000000;"> item </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;">In</span><span style="color: #000000;"> items
</span><span style="color: #008080;">4</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                container.Ext().Refresh(item, depth)
</span><span style="color: #008080;">5</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                Console.WriteLine(item)
</span><span style="color: #008080;">6</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;">7</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>

<span name="cs_wiki_filter" csw_filters="cs">
<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">ClientServerExample.cs: <span class="fscMemberName">DemonstrateLocalReadCommitted</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85"><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;"> DemonstrateLocalReadCommitted(IObjectServer server)
</span><span style="color: #008080;">02</span><span style="color: #000000;"><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Open_Text').style.display='inline';"/>    </span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalReadCommitted_1676_85_74_611_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 client1 </span><span style="color: #000000;">=</span><span style="color: #000000;">server.OpenClient();
</span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      IObjectContainer client2 </span><span style="color: #000000;">=</span><span style="color: #000000;">server.OpenClient();
</span><span style="color: #008080;">05</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      Pilot pilot </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Pilot(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">David Coulthard</span><span style="color: #800000;">&quot;</span><span style="color: #000000;">, </span><span style="color: #800080;">98</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"/>      IObjectSet result </span><span style="color: #000000;">=</span><span style="color: #000000;"> client1.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">BMW</span><span style="color: #800000;">&quot;</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"/>      Car car </span><span style="color: #000000;">=</span><span style="color: #000000;"> (Car)result.Next();
</span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      car.Pilot </span><span style="color: #000000;">=</span><span style="color: #000000;"> pilot;
</span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      client1.Set(car);
</span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      ListResult(client1.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">null</span><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"/>      ListResult(client2.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">null</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"/>      client1.Commit();
</span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      ListResult(client1.Get(</span><span style="color: #0000FF;">typeof</span><span style="color: #000000;">(Car)));      
</span><span style="color: #008080;">14</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      ListRefreshedResult(client2, client2.Get(</span><span style="color: #0000FF;">typeof</span><span style="color: #000000;">(Car)), </span><span style="color: #800080;">2</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"/>      client1.Close();
</span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      client2.Close();
</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">ClientServerExample.vb: <span class="fscMemberName">DemonstrateLocalReadCommitted</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85"><div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><span style="color: #008080;">01</span><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub DemonstrateLocalReadCommitted()</span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalReadCommitted_1819_85_14_792_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> DemonstrateLocalReadCommitted(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> server </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectServer)
</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;"> client1 </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient()
</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;"> client2 </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient()
</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;">Dim</span><span style="color: #000000;"> pilot </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Pilot </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Pilot(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">David Coulthard</span><span style="color: #800000;">&quot;</span><span style="color: #000000;">, </span><span style="color: #800080;">98</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;"> result </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectSet </span><span style="color: #000000;">=</span><span style="color: #000000;"> client1.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">BMW</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"/>            </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> car </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Car </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">DirectCast</span><span style="color: #000000;">(result.Next(), Car)
</span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            car.Pilot </span><span style="color: #000000;">=</span><span style="color: #000000;"> pilot
</span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            client1.Set(car)
</span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            ListResult(client1.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">Nothing</span><span style="color: #000000;">)))
</span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            ListResult(client2.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">Nothing</span><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"/>            client1.Commit()
</span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            ListResult(client1.Get(</span><span style="color: #0000FF;">GetType</span><span style="color: #000000;">(Car)))
</span><span style="color: #008080;">13</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            ListRefreshedResult(client2, client2.Get(</span><span style="color: #0000FF;">GetType</span><span style="color: #000000;">(Car)), </span><span style="color: #800080;">2</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"/>            client1.Close()
</span><span style="color: #008080;">15</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            client2.Close()
</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>Simple rollbacks just work as you might expect now.</p>

<span name="cs_wiki_filter" csw_filters="cs">
<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">ClientServerExample.cs: <span class="fscMemberName">DemonstrateLocalRollback</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80"><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;"> DemonstrateLocalRollback(IObjectServer server)
</span><span style="color: #008080;">02</span><span style="color: #000000;"><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Open_Text').style.display='inline';"/>    </span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id="ResourcesReferenceClient-ServerclientServerCS.ZipsClientServerExample.Cs_ClientServerExample.Cs_DemonstrateLocalRollback_2024_80_69_596_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 client1 </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient();
</span><span style="color: #008080;">04</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      IObjectContainer client2 </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient();
</span><span style="color: #008080;">05</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      IObjectSet result </span><span style="color: #000000;">=</span><span style="color: #000000;"> client1.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">BMW</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"/>      Car car </span><span style="color: #000000;">=</span><span style="color: #000000;"> (Car)result.Next();
</span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      car.Pilot </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Pilot(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Someone else</span><span style="color: #800000;">&quot;</span><span style="color: #000000;">, </span><span style="color: #800080;">0</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"/>      client1.Set(car);
</span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      ListResult(client1.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">null</span><span style="color: #000000;">)));
</span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      ListResult(client2.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">null</span><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"/>      client1.Rollback();
</span><span style="color: #008080;">12</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      client1.Ext().Refresh(car, </span><span style="color: #800080;">2</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"/>      ListResult(client1.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">null</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"/>      ListResult(client2.Get(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">null</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"/>      client1.Close();
</span><span style="color: #008080;">16</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>      client2.Close();
</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">ClientServerExample.vb: <span class="fscMemberName">DemonstrateLocalRollback</span></span></div><div class="fscCode"><pre ID="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80"><div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><span style="color: #008080;">01</span><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Open_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Open_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Closed_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Closed_Text').style.display='inline';"/><img id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Closed_Image" src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Closed_Text').style.display='none'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Open_Image').style.display='inline'; document.getElementById('ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Shared</span><span style="color: #000000;"> </span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub DemonstrateLocalRollback()</span><span id="ResourcesReferenceClient-ServerclientServerVB.ZipsClientServerExample.Vb_ClientServerExample.Vb_DemonstrateLocalRollback_2162_80_14_775_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> DemonstrateLocalRollback(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> server </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectServer)
</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;"> client1 </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient()
</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;"> client2 </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> server.OpenClient()
</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;">Dim</span><span style="color: #000000;"> result </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectSet </span><span style="color: #000000;">=</span><span style="color: #000000;"> client1.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">BMW</span><span style="color: #800000;">&quot;</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;"> car </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Car </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">DirectCast</span><span style="color: #000000;">(result.Next(), Car)
</span><span style="color: #008080;">06</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            car.Pilot </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Pilot(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Someone else</span><span style="color: #800000;">&quot;</span><span style="color: #000000;">, </span><span style="color: #800080;">0</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"/>            client1.Set(car)
</span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            ListResult(client1.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">Nothing</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"/>            ListResult(client2.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">Nothing</span><span style="color: #000000;">)))
</span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            client1.Rollback()
</span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            client1.Ext().Refresh(car, </span><span style="color: #800080;">2</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"/>            ListResult(client1.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">Nothing</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"/>            ListResult(client2.Get(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Car(</span><span style="color: #0000FF;">Nothing</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"/>            client1.Close()
</span><span style="color: #008080;">15</span><span style="color: #000000;"><img src="../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            client2.Close()
</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></div>
    </div>
    <div id="footer">
					This revision (2) was last Modified 2006-11-14T11:20:16 by Tetyana.
				</div>
  </body>
</html>