Поскольку вы использовали переменную с именем db, я предполагаю, что причина, по которой ваш запрос не работает, заключается в том, что это запрос к базе данных, а ваш переводчик запросов к базе данных отказывается переводить ваш метод Translate на язык базы данных. Вы могли бы описать ошибку, которую получаете, и мне не пришлось бы догадываться.
Если мои предположения верны, извлеките записи в память, сначала перечислив запрос, а затем вызовите метод. Как это:
IEnumerable<Category> categories = db.Categories
.ToList()
.OrderBy(w=>w.Name.Translate(1));