|
EF и вычисляемое поле с пользовательскими данными
|
|||
---|---|---|---|
#18+
Доброго времени суток уважаемые форумчане. Помогите пожалуйста со след. вопросами: Есть БД и подход построения код ферст и есть сущность, которая содержит поля координат X и Y: Код: c# 1. 2.
При получении данных, необходимо сделать сортировку ( на стороне БД) по расстоянию относительно координат (0,0). насколько я понимаю данный вопрос можно решить введением вычисляемого поля: Код: c# 1. 2. 3. 4. 5. 6.
и запрос соответственно будет: Код: c# 1.
вроде как должно работать.... Но возникает вопрос, а можно как-то сделать, чтобы пользователь сам смог задавать центр отсчета и дистанция рассчитывалась относительно него, т.е.: public virtual double Distance { get{ return Math.Sqrt(Math.Pow((X - UserX), 2) + Math.Pow((Y - UserY), 2)); } } вопрос в том как передать в вычисление пользовательские UserX и UserY? Поле Distance будет рассчитываться на стороне БД? И еще в выражении где находиться list, насколько я понимаю, сортировка будет происходить на стороне БД? или уже на стороне сервера? За ранее огромное спасибо всем:) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2015, 20:34 |
|
EF и вычисляемое поле с пользовательскими данными
|
|||
---|---|---|---|
#18+
Alex_studenticu, нагуглилось... http://stackoverflow.com/questions/9354716/linq-to-ef-unsupported-functions если хочешь на стороне БД. если хочешь на стороне приложения, забирай всё в память, потом строй обычные LINQ запросы с любыми C# функциями. в зависимости от количества данных, что-то оптимальнее делать на стороне БД, а что-то на стороне приложения. общее правило такое, если можно сделать это на стороне приложения, делай это на стороне приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2015, 21:55 |
|
EF и вычисляемое поле с пользовательскими данными
|
|||
---|---|---|---|
#18+
hVostt забирай всё в память, Это может быть как минимум - дико. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2015, 01:01 |
|
EF и вычисляемое поле с пользовательскими данными
|
|||
---|---|---|---|
#18+
Огромное спасибо за ссылку:) очень помогло ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2015, 14:57 |
|
|
start [/forum/topic.php?fid=17&fpage=14&tid=1349541]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 241ms |
total: | 383ms |
0 / 0 |