Ваша ошибка заключается в использовании агрегата в предложении orderBy
:
.orderBy(count("*").desc)
Если написано так, выражение вводит новое выражение агрегирования. Вместо этого вы должны ссылаться на существующий агрегат по имени:
.orderBy("freq")
Таким образом, ваш код должен выглядеть следующим образом:
val w = row_number().over(
Window.partitionBy("category").orderBy("freq"))
val result = df.select("category", "product")
.groupBy("category", "product")
.agg(count("*").as("freq"))
val new_res = result
.withColumn("seqNum", w).where(col("seqNum") <= 10)
.drop("seqNum")
Я чувствую Вашу боль. Простите бесстыдный разъем, но Вы могли бы изучить MvcFluentHtml. Можно все еще использовать SelectList и MultiSelectList, но у Вас есть несколько других вариантов. Должен хорошо работать с редакторами связей.
Аналогично, у меня было много проблем с Помощниками HTML, но не чем иным как SelectList. Для добавления к списку жалоб, я хотел бы знать, почему SelectList не принимает (или не может обработать), универсальный IEnumerable<T>
. Снова, Вы могли cludge вместе Ваша собственная реализация, но IEnumerable<T>
добавил бы довольно большую удобную функциональность (такую как прямая поддержка Платформы LINQ/Entity), и я чувствую, должен быть обеспечен.
MvcFluentHtml (теперь часть MvcContrib) похож на хорошее дополнение все же.
Я понимаю большинство Ваших вопросов, и странно достаточно, я не столкнулся ни с какими проблемами пока еще! Однако я могу использовать его точно, как разработчики MVC предназначили меня также и не должны были рисковать слишком много вне поля!
Но надо надеяться помочь Вам немного, вот пример того, как я использую SelectList и свойства, которые я установил:
<%= Html.DropDownList("Module.Status", new SelectList(ViewData.Model.Statuses, "ID", "Name", ((int)ViewData.Model.Module.Status)), new {tabindex = 1, title = "Status"})
%>
и в моем действии контроллера я использую ModelBinder (Вы говорили, что это не работает? не уверенный, с какими проблемами Вы встречаетесь там, мой идет прекрасный.)
public ActionResult Save(int? id, [Bind(Prefix = "Module",
Include = "Name,Description,Status")] Module module)
Затем к состоянию можно получить доступ в моем случае"module.Status
".