Професионална програма
Loading...
thereishope avatar thereishope 77 Точки

Задача 08. Addresses by Town

Здравейте имам проблем с тази задача, не ми излиза правилния оутпут .. това ми е заявката =>

 

              var result = db.Addresses.Select(v => new
              {
                  EmployeesCount = v.Employees.Count,
                  v.AddressText,
                  v.Town
              }).OrderByDescending(a => a.EmployeesCount).ThenBy(v=> v.Town).ThenBy(a=> a.AddressText).Take(10).ToList() ;

Тагове:
0
Databases Advanced - Entity Framework 08/11/2017 14:06:47
ambiorix avatar ambiorix 640 Точки
Best Answer

Мисля, че проблемът ти идва от ThenBy(v => v.Town). Трябва да вземеш името на града. Също така не трябва да имаш сортиране по AddressText:

var result = db.Addresses
	.OrderByDescending(a => a.Employees.Count)
	.ThenBy(a => a.Town.Name)
	.Take(10)
	.Select(a => new
		{
			Text = a.AddressText,
			Town = a.Town.Name,
			EmployeesCount = a.Employees.Count
		})
    .ToList();

 

0
08/11/2017 16:26:42
thereishope avatar thereishope 77 Точки

Така е да пропуснал съм name , но резултата е същият, а по условие трябва да се сортира i по AddressText ( ordered by the number of employees who live there (descending), then by town name (ascending), and finally by address text (ascending)) ) Това е резултата с твоята заяка

7726 Driftwood Drive, Monroe - 2 employees
163 Nishava Str, ent A, apt. 1, Sofia - 2 employees
108 Lakeside Court, Bellevue - 1 employees
1343 Prospect St, Bellevue - 1 employees
1648 Eastgate Lane, Bellevue - 1 employees
2284 Azalea Avenue, Bellevue - 1 employees
2947 Vine Lane, Bellevue - 1 employees
3067 Maya, Bellevue - 1 employees
3197 Thornhill Place, Bellevue - 1 employees
3284 S. Blank Avenue, Bellevue - 1 employees

0
ambiorix avatar ambiorix 640 Точки

Променили са условието за n-ти път и не съм гледал последната версия, извинявай за което.

Въпреки това заявката ми дава този резултат(дава 100 точки), което ме навежда на мисълта, че базата ти не е читава може би. Изтрий я и я създай наново със скрипта и тогава пробвай задачата.

163 Nishava Str, ent A, apt. 1, Sofia - 3 employees
7726 Driftwood Drive, Monroe - 2 employees
108 Lakeside Court, Bellevue - 1 employees
1343 Prospect St, Bellevue - 1 employees
1648 Eastgate Lane, Bellevue - 1 employees
2284 Azalea Avenue, Bellevue - 1 employees
2947 Vine Lane, Bellevue - 1 employees
3067 Maya, Bellevue - 1 employees
3197 Thornhill Place, Bellevue - 1 employees
3284 S. Blank Avenue, Bellevue - 1 employees

 

Линк към цялото ми решение: https://github.com/gaydov/Softuni-DB-Advanced/blob/master/5IntroToEFCore/AddressesByTown/Launcher.cs

1
08/11/2017 18:39:24
thereishope avatar thereishope 77 Точки

Благодаря ти, най интересното е че я изтрих и я създадох в началото преди да почна със задачите, и всички други ми излизаха, но както и да е остава си мистерия :) 

0
ambiorix avatar ambiorix 640 Точки

Ами след 6-та имаше един ред в който пишеше да се направи наново, защото преди това беше променена в самата задача - добавяше се един адрес ако не се лъжа.

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.