2013-03-10 3 views
0

Я просто пытаюсь проверить БД, чтобы увидеть, если пользователь дружит с другими пользователямипроверка БД и возвращение результата

в контроллере

[NonAction] 
    public bool IsFriend(int UserId, int id) 
    { 
      int query = _service.IsFriend(UserId, id); 
      if (query > 0) 
      { 
       return true; 
      } 
      else 
      { 
       return false; 
      } 
    } 

это будет работать, если я могу передать правильные параметры для него

Как я могу использовать это из представления, где у меня есть данные. Я знаю, что его не большой идентификатор, например

IsFriend (User.Id, Model.Userid)

model.userid проверяет друг идент идентификатор пользователя, подписанного в

это даже можно сделать с точки зрения?

с помощью бритвы cshmtl

ответ

0

Вы можете переместить метод более общее место (может быть вспомогательный класс), а затем добавить using заявление на ваш взгляд, и вызовите функцию

@model YourPageViewModel 

@using YourProject.HelperNameSpaceName 
<div> 
    @foreach(var friend in Model.KnownPeople) 
    { 
    <p>@friend.Name</p> 
    <p>@(IsFriend(friend.ID, Model.UserId)??"is friend":" is not friend")</p>  
    } 
</div> 

Но что я рекомендую вам сделать это, чтобы сделать это в своем методе действий вместо вашего представления. Просто сделайте чек в своем методе действий и добавьте только друзей друзей в свойство коллекции друзей вашей модели просмотра. Затем в представлении просто отобразите его.

public ActionMethod Profile(int userId) 
{ 
    var profileViewModel=new ProfileViewModel(); 
    var knownPeoples=repo.GetAllKnownPeopls(userId); 
    foreach(var person in knownPeoples) 
    { 
    if(IsFriend(person.ID, profileViewModel.CurrentUserID)) 
     profileViewModel.Friends.Add(person); 
    } 
    return View(profileViewModel); 
} 

Теперь на ваш взгляд, просто написать код дисплея только

@model ProfileViewModel 
@foreach(var friend in Model.Friends) 
{ 
    <p>@friend.Name</p> 
} 
+0

спасибо за информацию застенчивый, я закончил тем, что поместили его в метод действия, как вы сказали, и она работала отлично. Спасибо :) – mxadam

+0

@ user1311546: Добро пожаловать. Рад, что смог помочь. :) – Shyju

Смежные вопросы