Prev Next |
Sitecore always stores field values as plain text in the appropriate Sitecore database (in the Value column of the Fields table).
Displaying Raw Values
It is always possible to extract the raw field value of an Item using the Sitecore.Data.Items.Item class, as shown below.
Sitecore.Data.Items.Item item = Sitecore.Context.Database.Items["/sitecore/content/home"];
Response.Write("Value of the title field is: " + item["title"]);
This may work very well with titles and other simple data types, but will not always provide the desired results, as more complex types are stored in various formats within the field. For example, link types are stored as XML:
<link linktype="internal" url="/Home/History/Old activities" target="" id="{CB2BC023-C9CF-4086-811E-0952ADFA5AF9}" />
The following table provides an example of each field type, as the value is stored in the Sitecore database.
Field Type |
Example |
checkbox |
1 |
checklist |
{E00D9E00-2582-4022-88AE-151CE3CD7C41}|{858D25B3-B8A6-4ED1-B6F8-B52C4CC0EFDF} |
date |
20051003T120000 |
datetime |
20051003T163256 |
file |
/images/extimages/outh gif |
html |
This is some <strong>example</strong> HTML content. |
icon |
/sitecore/shell/Themes/standard/carousel.png |
image |
<image alt="Alternate text" width="150" height="150" hspace="4" vspace="4" mediaid="{539587C7-1F36-4D94-A10D-FFFAF079B746}" mediapath="/images/hist_gunung100px jpg" showineditor="1" usethumbnail="1" src="/SdnArchive/upload/images/hist_gunung100px.jpg"/> |
internal link |
/sitecore/content/Home/Sample Forms |
layout |
<r ><d id="{FE5D7FDF-89C0-4D99-9AA3-B5FBD009C9F3}" l="{14030E9F-CE92-49C6-AD87-7D49B50E42EA}"><r id="{493B3A83-0FA7-4484-8FC9-4680991CF743}" ph="content" ds="" par="Param1=Value1" cac="1" vbd="1" vbu="1" /></d><d id="{46D2F427-4CE5-4E1F-BA10-EF3636F43534}" l="{14030E9F-CE92-49C6-AD87-7D49B50E42EA}"><r id="{5D104030-657E-48DA-B032-0F9BB1A3C671}" ph="content" ds="" par="" /><r id="{E0E16B09-0176-4756-978C-63459B19F8ED}" ph="content" ds="/sitecore/content/Home/Other selectable document" par="Param1=Paramvalue1&Param2=Paramvalue2" cac="1" vbdev="1" vbqs="1" /></d></r> |
link |
<link text="Sitecore" linktype="external" url="http://www.sitecore.net" anchor="" title="go to Sitecore" class="Normal" target="_blank" /> |
lookup |
{858D25B3-B8A6-4ED1-B6F8-B52C4CC0EFDF} |
memo |
This is a test. |
multilist |
{632511FF-5E1D-4820-8379-CA5923328603}|{E00D9E00-2582-4022-88AE-151CE3CD7C41} |
password |
asdjlk |
reference |
{0D45476E-F67C-4F14-9B4E-C26D53F6EC48} |
security |
extranet|{A365D840-553C-4E76-9DFD-AC3BB58E80A1}|8||extranet|{24918F00-C53F-40D9-A8EB-DD25EBB131F9}|8448|| |
server file |
/global.html |
text |
Text field |
tree |
{DB290BF5-0D3E-41FA-8C0F-DDBBE4EEF68B} |
tristate |
1 |
valuelookup |
updater |
Casting Field Types
It is possible, however, to cast field values to a specific field type so that the output meets expectations.
We will use the code below in the following examples:
Sitecore.Data.Database db = Sitecore.Configuration.Factory.GetDatabase("master");
Sitecore.Data.Items.Item homeroot = db.Items ["/sitecore/content/home/updater/MyNewItemName"];
Response.Write("<hr /><strong>Security</strong></strong><hr />");
Response.Write(outSecurity(homeroot, "fldSecurity"));
Prev Next