Question

Nous avons une application ASP.NET qui utilise des instructions SQL, où les noms de tables non qualifiées. Lors de la compilation, il fonctionne très bien, mais quand décompilé, il se plaint et erreurs, en disant ces tables DonT » existent.

(ressemble nom qualifié comme Select * from MyDatabase.mySchema.MyTable;

comme Select * from MyTable non qualifié)

Si vous essayez ces requêtes sur la base de données, par vous-même, il ne prendra que les noms qualifiés.

Que se passe-t-il? Je pensais que Compilé vs apps devraient décompilé effectuer la même codewise façon.

Était-ce utile?

La solution

Que voulez-vous dire par « Compilé » ici?

Je ne pense pas que le problème que vous rencontrez est ce que vous pensez qu'il est. Ressemble plus une question de contexte de sécurité où le contexte de l'utilisateur que vous exécutez les requêtes sous dans un défaut de cas pour faire passer les requêtes à mon_schema et les autres valeurs par défaut à dbo.

Autres conseils

Les applications se comporteront les mêmes, je suppose que vous parlez de la différence entre l'exécution de Cassini et en cours d'exécution dans IIS?

Si tel est le cas, assurez-vous que votre chaîne de connexion est une identité spécifique, et non se faisant passer pour l'appelant ...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top