Как сохранить значение int в столбце таблицы через запятую, используя asp.net mvc - PullRequest
0 голосов
/ 18 ноября 2010

У меня есть таблица с именем Comments.с каждым комментарием у меня есть идентификатор комментария.

на моем экране пользователя, я могу добавить более одного комментария для каждого пользователя .. так что идентификатор комментария должен быть сохранен для этого использования как 1,2,3, ..И т. Д. Это означает, что я добавил 1 2 3 идентификатора комментария для пользователя ..

Как сохранить эти значения через запятую в столбце таблицы?

Спасибо

1 Ответ

6 голосов
/ 18 ноября 2010

Не.Используйте соединительную таблицу, в которой есть столбцы для UserID и CommentID, чтобы связать пользователя с его комментариями.Затем вы можете получить набор комментариев для пользователя с трехсторонним объединением таблиц User, UserComments и Comments.

select Comments.*
from Users inner join UserComments on Users.UserID == UserComments.UserID
           inner join Comments on UserComments.CommentID == Comments.CommentID
where Users.UserID == @userid

, где @userid - это идентификаторрассматриваемый пользователь.

С LINQ вам просто нужно сослаться на соответствующие наборы сущностей и, возможно, использовать SelectMany.

var comments = context.Users
                      .Where( u => u.UserID == userid )
                      .SelectMany( u => u.UserComments
                                         .SelectMany( uc => uc.Comments ) );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...