Comment accéder au référentiel de méthodes pour une entité dans symfony2?

Je suis coincé avec un problème s'il vous plaît m'aider avec elle. Voici la scenarario:

J'ai une entité "User" et de ce référentiel "UserRepository", à l'intérieur de l'entité, il y a seulement les méthodes getter et setter. Toutes les requêtes que j'ai écrite à UserRepository. Maintenant à l'intérieur de mon UserController je suis en train de dépôt d'accès à des méthodes dont je ne suis pas en mesure de le faire.
par exemple
L'utilisateur de l'entité:

class User
{
    ...

    public function getId()
    {
        return $this->id;
    }

    public function setId($id)
    {
        return $this->id=$id;
    }
    public function setProperty($property)
    {
        $this->property = $property;
    }


    public function getProperty()
    {
        return $this->property;
    }

    ....

    }
  ?>

UserRepository:

class UserRepository extends EntityRepository
{


    public function findUsersListingById($id)
    {
        $queryBuilder = $this->getEntityManager()->createQueryBuilder();

       $query = $em->createQuery(
                    "SELECT U
                    FROM  UserEntityPathGoesHere
                    WHERE U.id IN (".implode(",", $id).")"
                );

        $users = $query->getResult();

        return $users;
    }

    public function sayHelloWorld(){

        echo ' Hello World';
    }

}
?>

UserController

class UserController
{
 ...


$users=$this->getDoctrine()
        ->getRepository('MyUserEntityPath')
        ->findUsersListingById($ids);

    //now I have multiple users I want to iterate through each user for associating additional data with each user

     foreach($users as $user)
     {
        $temp = array();

        //I am able to access getId method which is  defined in User entity
        $temp['id'] = $user->getId();

        //however I am not able to  access method from UserRepository, I tried something like below which gives me error  call to undefined function sayHelloWorld
        $temp['status'] = $user->sayHelloWorld();

       ....

     }


}

....

Comment puis-je accéder au référentiel de méthodes pour une entité? Est-il possible ? Si non, quelles sont les alternatives pour la solution?

J'ai conscience de la réalité de l'entité et de référentiel n'avez pas besoin d'être au courant de toutes les autres, je suis juste essayer de méthodes de dépôt d'accès
Pas de. Vous ne pouvez pas accéder référentiel de méthodes directement à partir de votre entité. Il n'y a pas de lien direct entre les deux. Le sayHelloWold méthode doit être dans l'entité elle-même. Ou bien vous passez une entité: $userRepository->sayHelloWorld($utilisateur);
merci pour vos pensées, je suis capable d'appel référentiel de méthodes par le passage de l'entité elle-même, cependant, je me demande est-ce la façon appropriée de le faire? est-il d'autres alternatives, comme la création d'un service qui ont des méthodes détiennent actuellement par UserRepository? Je pense à propos de la création d'un service plutôt en passant entité pour chaque méthode dans repositoy
J'ai ajouté des méthodes pour l'itération d'une entité utilisateur soit d'un contrôleur ou d'un modèle.
Je n'ai $em->getRepository('AcmeDemoBundle:l'Utilisateur')->findById(array(1,2,3,4,5)); pour récupérer plusieurs utilisateurs.une Cependant à l'adresse de ma préoccupation majeure, comme @cerad mentionné dans son commentaire, il n'est pas possible directement à l'accès référentiel des méthodes que j'essayais d'atteindre

OriginalL'auteur Rahul | 2014-07-12