I would avoid the "if-then-else" or "switch" methods, and use a "dictionary" instead.
I assume you have a control that allows the user to select the number (ie 5) too, so you would need a way to "dynamically" add this to the query too.
Define this dictionary:
var filters = new Dictionary<string,
Func<IQueryable<Country>, int, IQueryable<Country>>>()
{
{ ">", (cs, n) => cs.Where(c => c.Id > n) },
{ ">=", (cs, n) => cs.Where(c => c.Id >= n) },
{ "==", (cs, n) => cs.Where(c => c.Id == n) },
{ "<=", (cs, n) => cs.Where(c => c.Id <= n) },
{ "<", (cs, n) => cs.Where(c => c.Id < n) },
};
Now you can populate your drop-down with the keys from the dictionary and then you can easily get your query out by doing this:
country = filters[">"](country, 5);
Or maybe something like this:
country = filters[dd.Value](country, int.Parse(tb.Text));
Yell out if you'd like any further explanation.