Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>You could create a parameter class like:</p> <pre><code>public class MailParameters { public DateTime EndTime { get; private set; } public IEnumerable&lt;int&gt; Languages { get; private set; } public int Priority { get; private set; } public string ProjectName { get; private set; } public DateTime StartTime { get; private set; } public MailParameters(string projectName, DateTime startTime, DateTime endTime, MailLang language, Priority priority) : this(projectName, startTime, endTime, new[] { language }, priority) public MailParameters(string projectName, DateTime startTime, DateTime endTime, IEnumerable&lt;MailLang&gt; languages, Priority priority) { ProjectName = projectName; StartTime = startTime; EndTime = endTime; Languages = languages.Cast&lt;int&gt;(); Priority = (int)priority; } } </code></pre> <p>Then add these extension methods:</p> <pre><code>public static int Count(this IQueryable&lt;Mail&gt; mails, MailCountParameter p) { return mails.Count(m =&gt; m.ProjectName == p.ProjectName &amp;&amp; p.Languages.Contains(m.MailLang) &amp;&amp; m.EnteredBetween(p.StartTime, p.EndTime) &amp;&amp; m.Priority == p.Priority); } public static bool EnteredBetween(this Mail mail, DateTime startTime, DateTime endTime) { return mail.DateEntered &gt;= startTime &amp;&amp; mail.DateEntered &lt;= endTime; } </code></pre> <p>The usage would then be:</p> <pre><code>var mailParametersOne = new MailParameters("Delta", startDate, endDate, new[] { MailLang.EU, MailLang.RU }, MailPriority.High); var mailTaskOne = CreateTask(() =&gt; myService.Mail.Count(mailParametersOne)); </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload