﻿<?xml version="1.0" encoding="utf-8"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Intersoft Community - Crosslight - How to Use Crosslight with CompositeFilterDescriptor On Strings and Nulls?</title><link>http://www.intersoftsolutions.com/Community/Crosslight/How-to-Use-Crosslight-with-CompositeFilterDescriptor-On-Strings-and-Nulls/</link><description /><generator>http://www.intersoftsolutions.com</generator><language>en</language><copyright>Copyright 2002 - 2015 Intersoft Solutions Corp. All rights reserved.</copyright><ttl>60</ttl><item><title>How to Use Crosslight with CompositeFilterDescriptor On Strings and Nulls?</title><link>http://www.intersoftsolutions.com/Community/Crosslight/How-to-Use-Crosslight-with-CompositeFilterDescriptor-On-Strings-and-Nulls/</link><pubDate>Wed, 19 Aug 2015 10:23:02 GMT</pubDate><dc:creator>Arief</dc:creator><description>&lt;p&gt;Hi Jimmy,&lt;br&gt;&lt;br&gt;You can uses &lt;span style="font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 14px; line-height: 20px; white-space: nowrap; background-color: rgb(255, 255, 255);"&gt;ToQueryString which you can find in here:&amp;nbsp;&lt;br&gt;&lt;/span&gt;&lt;span bitstream="" vera="" sans="" mono',="" 'courier="" new',="" courier,="" monospace;="" font-size:="" 14px;="" line-height:="" 20px;="" white-space:="" nowrap;="" background-color:="" rgb(255,="" 255,="" 255);'=""&gt;&lt;/span&gt;&lt;span bitstream="" vera="" sans="" mono',="" 'courier="" new',="" courier,="" monospace;="" font-size:="" 14px;="" line-height:="" 20px;="" white-space:="" nowrap;="" background-color:="" rgb(255,="" 255,="" 255);'=""&gt;&lt;/span&gt;&lt;span style="background-color: rgb(255, 255, 255); font-size: 14px; line-height: 20px; white-space: nowrap;"&gt;&lt;font face="Consolas, Bitstream Vera Sans Mono, Courier New, Courier, monospace"&gt;http://developer.intersoftsolutions.com/display/crosslight/OData+Support+Using+Query+Descriptor&lt;br&gt;&lt;br&gt;It can convert QueryDescriptor to ODataQuery automatically including it's qualifier.&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="background-color: rgb(255, 255, 255);"&gt;&lt;font face="Consolas, Bitstream Vera Sans Mono, Courier New, Courier, monospace"&gt;&lt;span style="font-size: 14px; line-height: 20px; white-space: nowrap;"&gt;Here is my example i have String in my Search Parameter:&lt;/span&gt;&lt;br&gt;&lt;span style="font-size: 14px; line-height: 20px; white-space: nowrap;"&gt;string adasd = this.QueryDescriptor.ToQueryString&amp;lt;SearchParameter&amp;gt; ();&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style="font-size: 14px; line-height: 20px; white-space: nowrap;"&gt;this is the result:&lt;/span&gt;&lt;br&gt;&lt;span style="font-size: 14px; line-height: 20px; white-space: nowrap;"&gt;$filter=(startswith(PropertyType, 'Apartment') eq true and startswith(SubArea, '') eq true and startswith(Apartment, '') eq true and startswith(Area, '') eq true and startswith(City, '') eq true and startswith(Price, '') eq true and Bedroom eq 0)&lt;br&gt;&lt;br&gt;hope that'll helps!&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="background-color: rgb(255, 255, 255);"&gt;&lt;font face="Consolas, Bitstream Vera Sans Mono, Courier New, Courier, monospace"&gt;&lt;span style="font-size: 14px; line-height: 20px; white-space: nowrap;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;</description></item><item><title>How to Use Crosslight with CompositeFilterDescriptor On Strings and Nulls?</title><link>http://www.intersoftsolutions.com/Community/Crosslight/How-to-Use-Crosslight-with-CompositeFilterDescriptor-On-Strings-and-Nulls/</link><pubDate>Tue, 18 Aug 2015 11:36:27 GMT</pubDate><dc:creator>jtungol@silentpartnersoft.com</dc:creator><description>&lt;p&gt;So there are specific FilterOperators used for strings or nulls. Okay, I guess that answers the question then. But what about for dates... are there specific filter operators for them too? Where can I find these information where it can tell us which operators to use for which data types. We did used FilterOperator.IsEqualTo and FilterOperator.IsNotEqualTo for some strings or nulls because it should filter specifically equal values. Using starts with or ends with operators will also validate other records that we don't want to de displayed (e.g. if we want results for 'John', we only need records for John and not records for Johnny, Johnson, etc). Using starts with operator will basically include those records that we don't need, correct me if I'm wrong.&lt;/p&gt;So yes, we did add qualifiers to values being passed to a FilterDescriptor to conform to OData specifications when using strings. That leads to my question of how to properly use those filter descriptors. That being said, we need to find guides in doing so because &lt;a href="http://developer.intersoftpt.com/display/crosslightapi/FilterOperator+Enumeration" target="_blank"&gt;this section&lt;/a&gt; the sample was comment out. Anyway, we hope you can give us more information about this.&lt;br&gt;&lt;br&gt;&lt;p&gt;Thanks!&lt;/p&gt;</description></item><item><title>How to Use Crosslight with CompositeFilterDescriptor On Strings and Nulls?</title><link>http://www.intersoftsolutions.com/Community/Crosslight/How-to-Use-Crosslight-with-CompositeFilterDescriptor-On-Strings-and-Nulls/</link><pubDate>Tue, 18 Aug 2015 04:07:27 GMT</pubDate><dc:creator>Arief</dc:creator><description>Hi Jimmy,&lt;br&gt;&lt;br&gt;Just confirmation, you want to pass the string qualifier, so when it' converted to OData specifications, it will be treated as is. You want to tell the server that you are sending String value, is this right?&lt;br&gt;&lt;br&gt;As far as i knows and uses, usually we use specific filterdescriptor for string and null, For null there are&amp;nbsp;FilterOperator.IsNullOrEmpty and for string usually we use&amp;nbsp;FilterOperator.StartsWith&lt;br&gt;&lt;br&gt;&lt;div&gt;I'm not sure about why you need to pass the qualifier except to conform ODATA specification, because we already could specifiy the value and type of get from inside the controller using WebAPI&lt;/div&gt;</description></item><item><title>How to Use Crosslight with CompositeFilterDescriptor On Strings and Nulls?</title><link>http://www.intersoftsolutions.com/Community/Crosslight/How-to-Use-Crosslight-with-CompositeFilterDescriptor-On-Strings-and-Nulls/</link><pubDate>Mon, 17 Aug 2015 23:30:36 GMT</pubDate><dc:creator>jtungol@silentpartnersoft.com</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;&lt;p&gt;We've looked at Dynamic Data Access with Query Descriptor, and we didn't find any filter that use strings or nulls, it's all numbers. Now, the reason why we noticed this is when using a FilterDescriptor with a string value or null, Crosslight converts string values without a valid qualifier, which violates OData specifications. The same is true when you specify null as a value, the result of the assigned value is blank. Now in order to workaround this, we needed to add quotes (&lt;span style="font-size: 14pt;"&gt;'&lt;/span&gt;) as qualifiers for strings (e.g. &lt;span style="font-size: 14pt;"&gt;"&lt;b&gt;'&lt;/b&gt;Beverages&lt;b&gt;'&lt;/b&gt;"&lt;/span&gt;) and pass a null value as string (e.g. &lt;span style="font-size: 14pt;"&gt;"null"&lt;/span&gt;), instead of the actual null object. Surely the samples from your documentation will work because numbers when converted to OData specifications will be treated as is, but this is not the case for strings, dates, etc.&lt;/p&gt;&lt;p&gt;Is this how we should do this with Crosslight or is there a proper way of doing it that we might be missing? Please advise.&lt;/p&gt;</description></item></channel></rss>