Comment Extraire les Données de la base de données à l'aide de Entity Framework 6

J'ai créer une requête pour renvoyer des données de deux tables dans lesquelles ils sont rejoints par jointure interne. Bien que, comme la requête semble très bien, j'obtiens le message d'erreur lorsque j'essaie d'accéder aux noms des champs de la requête. Comment dois-je utiliser .SingleOrDefault() fonction dans cette requête. Quelqu'un peut-il m'aider comment dois-je procéder.

private void FindByPincode(int iPincode)
    {
        using (ABCEntities ctx = new ABCEntities())
        {
            var query = from c in ctx.Cities
                        join s in ctx.States
                        on c.StateId equals s.StateId
                        where c.Pincode == iPincode
                        select new {
                                s.StateName, 
                                c.CityName, 
                                c.Area};

            //var query = ctx.Cities.AsNoTracking().SingleOrDefault(_city => _city.Pincode == iPincode);

            if (query != null)
            {
                cboState.SelectedItem.Text =query.State;        //Getting error "Could not found"
                cboCity.SelectedItem.Text = query.CityName;     //Getting error "Could not found"
                txtArea.Text = query.Area;                        //Getting error "Could not found"

            }

        }
    }

Merci d'avance.

L'erreur est "Système".Linq.IQueryable<AnonymousType#1>' ne contient pas une définition pour 'StateName' et aucune méthode d'extension 'StateName' acceptant un premier argument de type 'System.Linq.IQueryable<AnonymousType#1>' a pu être trouvé (vous manque une directive using ou une référence d'assembly?)"

OriginalL'auteur Jaan | 2013-11-25