tag n'existe pas dans l'espace de noms XML

Cette erreur semble être posté, mais chacun semble avoir sa propre solution, aucun n'a résolu mon problème.

J'obtiens une erreur pour un Dictionnaire de Ressources que je fais (et plus tard de fusion) que le tag "ModelBindings" n'existe pas dans l'espace de noms XML 'clr-namespace:de l'Entreprise.Projet.Le Module.Dossier;assembly=Société.Projet.Module"

L'assemblée, je suis référencement est personnalisé et contenus dans la solution. Non seulement cela, mais nous avons regardé les dll à mettre dans le bac pour le projet du Dictionnaire de Ressources réside dans et après inspection, il contient la classe je veux de référence. Donc, je sais que 1. la dll est dans le bon endroit pour être accessible et est dans les références. 2. La dll contient les données que je veux.

Voici quelques bouts de code pour le Dictionnaire de Ressources

De l'inscription de l'espace de noms

xmlns:modulemodel="clr-namespace:Company.Project.Module.Folder;assembly=Company.Project.Module"

La création de la ressource référencée

<modulemodel:ModelBindings x:Key="ModuleModelBindings"/>

Comme les erreurs d'autres personnes l'intellisense dit son casher. Aussi la xmlns liste a été créée avec l'intellisense de la saisie semi-automatique et retapé manuellement. Ni travaillé.

J'ai aussi essayé le déplacement tout à l'app.xaml et toujours il m'a donné le même message d'erreur.

Si je supprime le corps de la ResourceDictionary fichier le code se compile bien, mais toutes les liaisons sont rompues.

Enfin, toutes les définitions de ressource utilisé pour être défini dans les fichiers xaml où ils ont été utilisés, ce qui a bien fonctionné. Ses seulement après que j'ai essayé de les créer à partir d'un autre projet qu'il n'a pas de travail. J'ai changé ce pour corriger une erreur et de revenir à l'ancienne méthode pourrait être problématique.

Edit: Ici, c'est le mieux que je puisse faire en termes de montrer le dictionnaire de ressources, je suis en utilisant

<SharedResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:modulemodel="clr-namespace:Company.Project.Module.Folder;assembly=Company.Project.Module"
                    >
    <modulemodel:ModelBindings x:Key="ModuleModelBindings"/>

</SharedResourceDictionary>

si je remplace SharedResourceDictionary avec ResourceDictionary la même erreur se produit.

app.xaml et le SharedResourceDictionary ci-dessus sont comparetively dans l'espace de noms de l'Entreprise.Projet.Principal et il a des références à la fois où SharedResourceDictionary est défini ainsi que les différents projets de module je l'ai mis dans le code ci-dessus

Solution

On dirait que c'est surtout une erreur de l'utilisateur. Mais ce qui pourrait arriver à d'autres. Quand j'ai copié le xmlns:moduleviewmodel la définition dans le fichier d'origine, j'ai dû ajouter de l'assemblée= partie sur mon propre. Comme je l'ai dit je me suis fait à moi-même ainsi que l'utilisation de la saisie semi-automatique le suit de taper " xmlns:moduleviewmodel=' . Juste avant, nous avons trouvé l'erreur, nous avons essayé de la saisie semi-automatique de nouveau, car nous avons trouvé qu'il était l'un des 7 espaces de noms ne génère pas l'erreur. C'est alors que j'ai remarqué qu'il y avait une lettre à l'assemblée chemin qui n'a pas été capitalisés qui devrait être. La chose étrange est la saisie semi-automatique en fait insère cette erreur sur son propre. Alors que nous étions à la compilation que j'ai remarqué l'erreur de lettre. Le plus étrange, c'est que après que j'ai corrigé tous les chemins d'accès manuellement nous avons essayé de la saisie semi-automatique de nouveau et il orthographié correctement.

Je n'ai aucune idée de la cause de l'erreur de saisie semi-automatique, mais avec le fixe lettre, il compile très bien.

Maintenant, je me demande si quelqu'un va croire à la saisie semi-automatique était en train de changer sur moi!

source d'informationauteur StephenT