Sophie

Sophie

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

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

<html>
  <head>
    <META http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Custom Query Comparator</title>
    <link rel="stylesheet" type="text/css" href="../../../style.css">
  </head>
  <body>
    <div class="CommonContent">
      <div class="CommonContentArea">
        <h1>Custom Query Comparator</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>Db4o allows using a custom comparator for query processing.
This can be useful for replacing the standard way of selecting query results,
for example, when a non-standard attribute type should be compared as string or
integer</p>

<p>The usage is best shown on an example. </p>

<p>Let's create a custom class containing string information:</p>



<span name="cs_wiki_filter" csw_filters="cs">

<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">MyString.cs</span></div><div class="fscCode"><pre ID=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43"><div><!--

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

--><span style="color: #008080;">01</span><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Open_Text').style.display='inline';"/><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">/**/</span><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_0_60_Open_Text"><span style="color: #008000;">/*</span><span style="color: #008000;"> Copyright (C) 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.Comparing
</span><span style="color: #008080;">03</span><span style="color: #000000;"><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Open_Text').style.display='inline';"/></span><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_100_309_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;">class</span><span style="color: #000000;"> MyString
</span><span style="color: #008080;">05</span><span style="color: #000000;"><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Open_Text').style.display='inline';"/>    </span><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_125_307_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;">string</span><span style="color: #000000;"> _string;
</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=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Open_Text').style.display='inline';"/>      </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> MyString(</span><span style="color: #0000FF;">string</span><span style="color: #000000;"> str)</span><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_197_226_Open_Text"><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"/>        _string </span><span style="color: #000000;">=</span><span style="color: #000000;"> str;
</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/InBlock.gif" align="top"/>      
</span><span style="color: #008080;">12</span><span style="color: #000000;"><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Open_Text').style.display='inline';"/>      </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 id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsMyString.Cs_MyString.Cs_411_43_271_301_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;">return</span><span style="color: #000000;"> _string;
</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">MyString.vb</span></div><div class="fscCode"><pre ID=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_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=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Open_Text').style.display='inline';"/></span><span id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Namespace Db4objects</span><span id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_57_378_Open_Text"><span style="color: #0000FF;">Namespace</span><span style="color: #000000;"> Db4objects.Db4odoc.Comparing
</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=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Open_Text').style.display='inline';"/>    </span><span id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Class MyString</span><span id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_101_364_Open_Text"><span style="color: #0000FF;">Class</span><span style="color: #000000;"> MyString
</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;"> _string </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;">06</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>
</span><span style="color: #008080;">07</span><span style="color: #000000;"><img id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Open_Text').style.display='inline';"/>        </span><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub New()</span><span id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_166_236_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;"> </span><span style="color: #0000FF;">str</span><span style="color: #000000;"> </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;">08</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            _string </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">str</span><span style="color: #000000;">
</span><span style="color: #008080;">09</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;">10</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>
</span><span style="color: #008080;">11</span><span style="color: #000000;"><img id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_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=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Function ToString()</span><span id=".ComparingVB.ZipsMyString.Vb_MyString.Vb_518_43_273_350_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;">12</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;"> _string
</span><span style="color: #008080;">13</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;">14</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;">15</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>MyString class will be used for an attribute in the
following class:</p>



<span name="cs_wiki_filter" csw_filters="cs">

<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">Record.cs</span></div><div class="fscCode"><pre ID=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41"><div><!--

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

--><span style="color: #008080;">01</span><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Open_Text').style.display='inline';"/><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">/**/</span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_0_60_Open_Text"><span style="color: #008000;">/*</span><span style="color: #008000;"> Copyright (C) 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.Comparing
</span><span style="color: #008080;">03</span><span style="color: #000000;"><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Open_Text').style.display='inline';"/></span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_100_371_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;">class</span><span style="color: #000000;"> Record
</span><span style="color: #008080;">05</span><span style="color: #000000;"><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Open_Text').style.display='inline';"/>    </span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_123_369_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;"> MyString _record;
</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 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;"> Record(</span><span style="color: #0000FF;">string</span><span style="color: #000000;"> record)
</span><span style="color: #008080;">10</span><span style="color: #000000;"><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Open_Text').style.display='inline';"/>        </span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_206_261_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"/>            _record </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> MyString(record);
</span><span style="color: #008080;">12</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;">13</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>
</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;">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;">15</span><span style="color: #000000;"><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Open_Text').style.display='inline';"/>        </span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsRecord.Cs_Record.Cs_709_41_313_363_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"/>            </span><span style="color: #0000FF;">return</span><span style="color: #000000;"> _record.ToString();
</span><span style="color: #008080;">17</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;">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/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">Record.vb</span></div><div class="fscCode"><pre ID=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41"><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=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Open_Text').style.display='inline';"/></span><span id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Namespace Db4objects</span><span id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_57_407_Open_Text"><span style="color: #0000FF;">Namespace</span><span style="color: #000000;"> Db4objects.Db4odoc.Comparing
</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=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Open_Text').style.display='inline';"/>    </span><span id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Class Record</span><span id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_101_393_Open_Text"><span style="color: #0000FF;">Class</span><span style="color: #000000;"> Record
</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;"> _record </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> MyString
</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: #008080;">07</span><span style="color: #000000;"><img id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Open_Text').style.display='inline';"/>        </span><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub New()</span><span id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_166_256_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;"> record </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;">08</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            _record </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> MyString(record)
</span><span style="color: #008080;">09</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;">10</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>
</span><span style="color: #008080;">11</span><span style="color: #000000;"><img id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_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=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Function ToString()</span><span id=".ComparingVB.ZipsRecord.Vb_Record.Vb_814_41_293_379_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;">12</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;"> _record.ToString
</span><span style="color: #008080;">13</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;">14</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;">15</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>Let's save some Record objects to the database:</p>



<span name="cs_wiki_filter" csw_filters="cs">

<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CompareExample.cs: <span class="fscMemberName">StoreRecords</span></span></div><div class="fscCode"><pre ID=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62"><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;"> StoreRecords(IConfiguration configuration)
</span><span style="color: #008080;">02</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Open_Text').style.display='inline';"/>        </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_71_666_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"/>            File.Delete(FileName);
</span><span style="color: #008080;">04</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;"> Db4oFactory.OpenFile(configuration, FileName);
</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;">try</span><span style="color: #000000;">
</span><span style="color: #008080;">06</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Open_Text').style.display='inline';"/>            </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_224_573_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"/>                Record record </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Record(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Michael Schumacher, points: 100</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(record);
</span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                record </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Record(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Rubens Barrichello, points: 98</span><span style="color: #800000;">&quot;</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"/>                container.Set(record);
</span><span style="color: #008080;">11</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                record </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Record(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Kimi Raikonnen, points: 55</span><span style="color: #800000;">&quot;</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"/>                container.Set(record);
</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;">finally</span><span style="color: #000000;">
</span><span style="color: #008080;">15</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Open_Text').style.display='inline';"/>            </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_StoreRecords_981_62_606_656_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"/>                container.Close();
</span><span style="color: #008080;">17</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;">18</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">CompareExample.vb: <span class="fscMemberName">StoreRecords</span></span></div><div class="fscCode"><pre ID=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62"><div><!--

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

--><span style="color: #008080;">01</span><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_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=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub StoreRecords()</span><span id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_StoreRecords_1107_62_14_638_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> StoreRecords(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> configuration </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IConfiguration)
</span><span style="color: #008080;">02</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            File.Delete(FileName)
</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;"> container </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IObjectContainer </span><span style="color: #000000;">=</span><span style="color: #000000;"> Db4oFactory.OpenFile(configuration, FileName)
</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 src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                </span><span style="color: #0000FF;">Dim</span><span style="color: #000000;"> record </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> Record </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Record(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Michael Schumacher, points: 100</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(record)
</span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                record </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Record(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Rubens Barrichello, points: 98</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(record)
</span><span style="color: #008080;">09</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                record </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Record(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Kimi Raikonnen, points: 55</span><span style="color: #800000;">&quot;</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"/>                container.Set(record)
</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;">Finally</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"/>                container.Close()
</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;">Try</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 style="color: #0000FF;">End Sub</span></span></div></pre></div></div>

</span>

<p>Selecting the query results, we need to compare string
values contained in MyString objects. This can be configured with the following
setting:</p>



<span name="cs_wiki_filter" csw_filters="cs">

<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CompareExample.cs: <span class="fscMemberName">Configure</span></span></div><div class="fscCode"><pre ID=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59"><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;"> IConfiguration Configure()
</span><span style="color: #008080;">2</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Open_Text').style.display='inline';"/>        </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_Configure_1393_59_50_260_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"/>            IConfiguration configuration </span><span style="color: #000000;">=</span><span style="color: #000000;"> Db4oFactory.NewConfiguration();
</span><span style="color: #008080;">4</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            configuration.ObjectClass(</span><span style="color: #0000FF;">typeof</span><span style="color: #000000;">(MyString)).Compare(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> MyStringAttribute());
</span><span style="color: #008080;">5</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;"> configuration;
</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><div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CompareExample.cs: <span class="fscMemberName">MyStringAttribute</span></span></div><div class="fscCode"><pre ID=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63"><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;">class</span><span style="color: #000000;"> MyStringAttribute : IObjectAttribute
</span><span style="color: #008080;">02</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Open_Text').style.display='inline';"/>        </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_59_322_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;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">object</span><span style="color: #000000;"> Attribute(</span><span style="color: #0000FF;">object</span><span style="color: #000000;"> original)
</span><span style="color: #008080;">04</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Open_Text').style.display='inline';"/>            </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_126_312_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: #0000FF;">if</span><span style="color: #000000;"> (original </span><span style="color: #0000FF;">is</span><span style="color: #000000;"> MyString)
</span><span style="color: #008080;">06</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Open_Text').style.display='inline';"/>                </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_MyStringAttribute_1452_63_186_265_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: #0000FF;">return</span><span style="color: #000000;"> ((MyString)original).ToString();
</span><span style="color: #008080;">08</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;">09</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;"> original;
</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> <br></p>

</span>

<span name="cs_wiki_filter" csw_filters="vb">

<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CompareExample.vb: <span class="fscMemberName">Configure</span></span></div><div class="fscCode"><pre ID=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59"><div><!--

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

--><span style="color: #008080;">1</span><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_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=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Function Configure()</span><span id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_Configure_1588_59_14_275_Open_Text"><span style="color: #0000FF;">Function</span><span style="color: #000000;"> Configure() </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IConfiguration
</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;"> configuration </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IConfiguration </span><span style="color: #000000;">=</span><span style="color: #000000;"> Db4oFactory.NewConfiguration()
</span><span style="color: #008080;">3</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>            configuration.ObjectClass(</span><span style="color: #0000FF;">GetType</span><span style="color: #000000;">(MyString)).Compare(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> MyStringAttribute)
</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;">Return</span><span style="color: #000000;"> configuration
</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 Function</span></span></div></pre></div></div><div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CompareExample.vb: <span class="fscMemberName">MyStringAttribute</span></span></div><div class="fscCode"><pre ID=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63"><div><!--

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

--><span style="color: #008080;">01</span><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Open_Text').style.display='inline';"/><span style="color: #0000FF;">Private</span><span style="color: #000000;"> </span><span id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Class MyStringAttribute</span><span id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_8_396_Open_Text"><span style="color: #0000FF;">Class</span><span style="color: #000000;"> MyStringAttribute
</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;">Implements</span><span style="color: #000000;"> IObjectAttribute
</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=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Open_Text').style.display='inline';"/>            </span><span style="color: #0000FF;">Public</span><span style="color: #000000;"> </span><span id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Function Attribute()</span><span id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_MyStringAttribute_1647_63_92_378_Open_Text"><span style="color: #0000FF;">Function</span><span style="color: #000000;"> Attribute(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> original </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;">As</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Object</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Implements</span><span style="color: #000000;"> IObjectAttribute.Attribute
</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;">If</span><span style="color: #000000;"> </span><span style="color: #0000FF;">TypeOf</span><span style="color: #000000;"> original </span><span style="color: #0000FF;">Is</span><span style="color: #000000;"> MyString </span><span style="color: #0000FF;">Then</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;">Return</span><span style="color: #000000;"> </span><span style="color: #0000FF;">CType</span><span style="color: #000000;">(original, MyString).ToString
</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;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">If</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;">Return</span><span style="color: #000000;"> original
</span><span style="color: #008080;">09</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;">10</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockEnd.gif" align="top"/>        </span><span style="color: #0000FF;">End Class</span></span></div></pre></div></div>&nbsp; <br></p>

</span><p>This piece of code registers an attribute provider for
special query behavior. </p>

<p>The query processor will compare the
object returned by the attribute provider instead of the actual object, both
for the constraint and the candidate persistent object.</p>

<p>The querying code will look like this:</p>



<span name="cs_wiki_filter" csw_filters="cs">

<div class="FormattedSourceCode"><div class="fscHeader"><span class="fscFileName">CompareExample.cs: <span class="fscMemberName">CheckRecords</span></span></div><div class="fscCode"><pre ID=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62"><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;"> CheckRecords(IConfiguration configuration)
</span><span style="color: #008080;">02</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Open_Text').style.display='inline';"/>        </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_71_542_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;"> Db4oFactory.OpenFile(configuration, FileName);
</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=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Open_Text').style.display='inline';"/>            </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_189_449_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"/>                IQuery q </span><span style="color: #000000;">=</span><span style="color: #000000;"> container.Query();
</span><span style="color: #008080;">07</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                q.Constrain(</span><span style="color: #0000FF;">new</span><span style="color: #000000;"> Record(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Rubens</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"/>                q.Descend(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">_record</span><span style="color: #800000;">&quot;</span><span style="color: #000000;">).Constraints().Contains();
</span><span style="color: #008080;">09</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;"> q.Execute();
</span><span style="color: #008080;">10</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                ListResult(result);
</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;">finally</span><span style="color: #000000;">
</span><span style="color: #008080;">13</span><span style="color: #000000;"><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Open_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Closed_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Closed_Text').style.display='inline';"/><img id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedSubBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Closed_Text').style.display='none'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Open_Image').style.display='inline'; document.getElementById('.ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Open_Text').style.display='inline';"/>            </span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">...</span><span id=".ComparingCS.ZipsCompareExample.Cs_CompareExample.Cs_CheckRecords_2111_62_482_532_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"/>                container.Close();
</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">CompareExample.vb: <span class="fscMemberName">CheckRecords</span></span></div><div class="fscCode"><pre ID=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62"><div><!--

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

--><span style="color: #008080;">01</span><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Open_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ExpandedBlockStart.gif" align="top" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Open_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Closed_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Closed_Text').style.display='inline';"/><img id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Closed_Image" src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/ContractedBlock.gif" align="top" style="display: none;" onClick="this.style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Closed_Text').style.display='none'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Open_Image').style.display='inline'; document.getElementById('.ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_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=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Closed_Text" style="border: solid 1px #808080; background-color: #FFFFFF; display: none;">Sub CheckRecords()</span><span id=".ComparingVB.ZipsCompareExample.Vb_CompareExample.Vb_CheckRecords_2237_62_14_517_Open_Text"><span style="color: #0000FF;">Sub</span><span style="color: #000000;"> CheckRecords(</span><span style="color: #0000FF;">ByVal</span><span style="color: #000000;"> configuration </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IConfiguration)
</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;"> Db4oFactory.OpenFile(configuration, FileName)
</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;"> q </span><span style="color: #0000FF;">As</span><span style="color: #000000;"> IQuery </span><span style="color: #000000;">=</span><span style="color: #000000;"> container.Query
</span><span style="color: #008080;">05</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                q.Constrain(</span><span style="color: #0000FF;">New</span><span style="color: #000000;"> Record(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">Rubens</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"/>                q.Descend(</span><span style="color: #800000;">&quot;</span><span style="color: #800000;">_record</span><span style="color: #800000;">&quot;</span><span style="color: #000000;">).Constraints.Contains()
</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;">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;"> q.Execute
</span><span style="color: #008080;">08</span><span style="color: #000000;"><img src="../../../Utility/ActiPro.CodeHighligher/OutliningIndicators/InBlock.gif" align="top"/>                ListResult(result)
</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;">Finally</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"/>                container.Close()
</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;">End</span><span style="color: #000000;"> </span><span style="color: #0000FF;">Try</span><span style="color: #000000;">
</span><span style="color: #008080;">12</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>Using query comparator feature we can change the standard
way of selecting query results. This can be helpful for:</p>

<ul><li>querying user types using simple string or numeric
representation</li><li>encapsulating additional logic into querying algorithm.</li></ul>





</div>
    </div>
    <div id="footer">
					This revision (4) was last Modified 2007-05-07T09:44:16 by Tetyana.
				</div>
  </body>
</html>