本文整理汇总了C#中Query.Clear方法的典型用法代码示例。如果您正苦于以下问题:C# Query.Clear方法的具体用法?C# Query.Clear怎么用?C# Query.Clear使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Query
的用法示例。
在下文中一共展示了Query.Clear方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestOr_2
public void TestOr_2() {
//创建第二个查询对象
Query<Customer, int> query2 = new Query<Customer, int>();
query2.Filter( t => t.EnglishName == "B" ).Filter( t => t.Age == 20 );
//添加条件
_query.Filter( t => t.Name == "A" ).Or( query2 );
//清空并添加一个条件,用And操作合并
query2.Clear();
query2.Filter( t => t.Age == 10 );
_query.And( query2 );
//验证
List<Customer> customers = _query.GetList( _customerRepository.Find() );
Assert.AreEqual( 1, customers.Count );
}
示例2: IsResidente
/// <summary>
/// Consente di individuare se il condomino è residente confrontando l'indirizzo della persona con quello del condominio
/// </summary>
/// <remarks>Per stabilire se gli indirizzi corrispondono viene usato un componente di terze parti <see cref="http://www.shuffletext.com/Default.aspx"/></remarks>
/// <param name="soggetto">Condomino</param>
/// <returns>Ritorna true se è residente altrimenti false</returns>
public bool IsResidente(SoggettoCondominio soggetto)
{
if (soggetto != null && soggetto.IsResidente == null && soggetto.UnitaImmobiliare != null && soggetto.UnitaImmobiliare.GruppoStabileRiferimento != null && soggetto.Persona != null && soggetto.Persona.IndirizzoResidenza != null && !string.IsNullOrEmpty(soggetto.Persona.IndirizzoResidenza.Indirizzo))
{
try
{
var condominio = soggetto.UnitaImmobiliare.GruppoStabileRiferimento.PalazzinaRiferimento.CondominioRiferimento;
if (condominio.Indirizzo != null)
{
var person = new SearchableDictionary<int>();
var fuzzy = new FuzzySearch<int>();
var query = new Query(QuerySearchOption.And, new NameSynonymThesaurusReader(), 0.75);
var scope = new IntellisenseScope<int>();
var persona = soggetto.Persona;
var indirizzoSoggetto = persona.IndirizzoResidenza.GetIndirizzoCompleto();
var indirizzoCondominio = condominio.Indirizzo.GetIndirizzoCompleto();
if (!string.IsNullOrEmpty(indirizzoSoggetto) && !string.IsNullOrEmpty(indirizzoCondominio))
{
person.Add(persona.ID, string.Format("{0}", indirizzoSoggetto));
fuzzy.Add(persona.ID, "Indirizzo", indirizzoSoggetto);
query.Clear();
query.CreateSearchTerm("Indirizzo", indirizzoCondominio, 0.20, true);
var fuzzyResult = fuzzy.Search(query, scope, 1);
return fuzzyResult.Count > 0 && fuzzyResult[0].Rank > 1;
}
return true;
}
}
catch (Exception ex)
{
_log.Warn("Errore inaspettato durante il set di residente - " + Library.Utility.GetMethodDescription(), ex);
return false;
}
}
return false;
}
示例3: RicercaPersone
public void RicercaPersone()
{
var info = new Gipasoft.Business.Sfera.Repository.UserInfo {Azienda = Login.Instance.CurrentLogin().Azienda};
var soggetti = SferaServiceProxy.Instance.CurrentService().GetSoggettiCondominioByCondominio(119, info);
var person = new SearchableDictionary<int>();
var fuzzy = new FuzzySearch<int>();
var query = new Query(QuerySearchOption.And, new NameSynonymThesaurusReader(), 0.75);
var scope = new IntellisenseScope<int>();
var dict = new Dictionary<int, PersonaDTO>();
foreach (var soggetto in soggetti.Distinct())
{
var persona = SferaServiceProxy.Instance.CurrentService().GetPersonaByID(soggetto.IdPersona, info);
if (!dict.ContainsKey(persona.ID))
{
person.Add(persona.ID,
String.Format("{0} {1} {2}", persona.IndirizzoResidenza.Indirizzo,
persona.IndirizzoResidenza.DescrizioneComune,
persona.IndirizzoResidenza.Civico));
fuzzy.Add(persona.ID, "Via", persona.IndirizzoResidenza.Indirizzo);
fuzzy.Add(persona.ID, "Comune", persona.IndirizzoResidenza.DescrizioneComune);
fuzzy.Add(persona.ID, "Civico", persona.IndirizzoResidenza.Civico);
dict.Add(persona.ID, persona);
}
}
query.Clear();
var condominio = SferaServiceProxy.Instance.CurrentService().GetCondominioById(119, true, false, info);
query.CreateSearchTerm("Via", condominio.Indirizzo.Indirizzo, 0.20, true);
query.CreateSearchTerm("Comune", condominio.Indirizzo.DescrizioneComune);
query.CreateSearchTerm("Civico", condominio.Indirizzo.Civico);
var fuzzyResult = fuzzy.Search(query, scope, dict.Count);
foreach (var searchResult in fuzzyResult)
{
var split = person[searchResult.Key].Split(new[] { ' ' });
var via = split[0];
// table.Rows.Add(new object[] { searchResult.Rank, searchResult.Key, split[0], split[1], split[2] });
}
}
示例4: TestClear
public void TestClear() {
//给第一个查询对象添加条件
_query.Filter( t => t.Name == "A" );
//创建第2个查询对象
Query<Customer, int> query2 = new Query<Customer, int>();
query2.Filter( t => t.Age == 1 );
//或操作合并查询对象
_query.Or( query2 );
//清空第2个查询对象,再添加条件
query2.Clear();
query2.Filter( t => t.Name == "C" );
//与操作合并查询对象
_query.And( query2 );
//验证
Expression<Func<Customer, bool>> expected = t => ( t.Name == "A"|| t.Age == 1 ) && t.Name == "C";
Assert.AreEqual( expected.ToString(), _query.GetPredicate().ToString() );
}