Compilateur Message d'Erreur: CS0103: Le nom de "BusinessLogic" n'existe pas dans le contexte actuel
Comme beaucoup de gens, j'ai obtenu CS0103 problème, mais je n'en ai pas trouvé une bonne solution sur les thèmes existants lorsque vous travaillez avec IIS7.5
La chose étrange est:
- Le site est fonctionne bien sous IIS5.1 /XP (au moins, il n'y a pas ce problème)
- Le site fonctionne bien sous IIS7.5 Express /XP (lors de l'exécution de Visual Studio 2010)
- Le site est fonctionne bien sous IIS7.5 Express /W7 (lors de l'exécution de Visual Studio 2010)
- Mais j'ai cette erreur lors de l'utilisation de IIS7.5 /W7
La classe impliquée dans cette erreur est dans BusinessLogicWrapper.cs, dans le dossier App_Code (qui icône est grise dans Visual Studio. Est-ce à dire qu'il n'est pas pris en compte? Ou c'est seulement parce que c'est un dossier spécial?).
J'ai essayé d'ajouter au début de SessionProcessing.ashx un include BusinessLogic;
mais il n'a pas de travail: le compilateur juste s'arrêter à la 3e ligne, au lieu de les 30, disant qu'il ne sait pas ce qu'il a à comprendre...
Je vous remercie pour votre aide,
Plus d'informations:
- Je suis en cours d'exécution une version Compilée du site
- Au début il a été conçu pour IIS5.1
Partielle d'une solution de contournement a été de mettre le dossier bin de mon répertoire virtuel dans le répertoire racine.
Remarque que je n'ai pas de serveur "erreurs" (au moins pour le moment), mais que le site ne fonctionne toujours pas (je pense qu'il y a des problèmes avec chemin d'accès aux différents fichiers...).
Ce n'est pas une réponse définitive (à partir de moi-même à moi-même et les autres), mais peut-être qu'il pourrait donner des idées aux plus expérimentés!
L'erreur 500 indiqué par le site:
Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.
Compiler Error Message: CS0103: The name 'BusinessLogic' does not exist in the current context
Source Error:
Line 28: (context.Request.HttpMethod == "POST" && context.Request.Params["action"] == "DELETE"))
Line 29: {
Line 30: BusinessLogic.Wrapper.WRITE_TRACE(BusinessLogic.TraceLevel.MEDIUM, "SessionProcessing.ashx End session", "sid:" + sid);
Line 31: int res = BusinessLogic.Wrapper.removeSession(sid);
Line 32:
Source File: c:\Users\blabla\PrecompiledWeb\Web2\SessionProcessing.ashx Line: 30
Le début de la SessionProcessing.ashx:
<%@ WebHandler Language="C#" Class="getsession" %>
using System;
using System.Web;
using System.Text;
public class getsession : IHttpHandler, System.Web.SessionState.IReadOnlySessionState
{
public void ProcessRequest (HttpContext context) {
context.Response.Clear();
context.Response.TrySkipIisCustomErrors = true;
String sid = context.Request.Params["sessionid"];
try
{
if (sid != null)
{
//###############################################
//###############################################
if (context.Request.HttpMethod == "DELETE" ||
(context.Request.HttpMethod == "POST" && context.Request.Params["action"] == "DELETE"))
{
BusinessLogic.Wrapper.WRITE_TRACE(BusinessLogic.TraceLevel.MEDIUM, "SessionProcessing.ashx End session", "sid:" + sid);
int res = BusinessLogic.Wrapper.removeSession(sid);
Et enfin l'image de l'arbre: http://i.stack.imgur.com/szbhA.png
App_Code/BusinessLogicWrapper.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Text;
using System.Runtime.InteropServices;
namespace BusinessLogic
{
///<summary>
///Summary description for BusinessLogicWrapper
///</summary>
public class Wrapper
{
//Init
[DllImport("BusinessLogicLib.dll", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
public static extern int init(string loginFilePath, string remoteServerName, string[] itemsConnection, int cItems);
web.config (En réalité, il y a 9 règles de réécriture)
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0"/>
<httpCookies domain="localhost"/>
</system.web>
<system.webServer>
<!-- add support for ogg files-->
<staticContent>
<mimeMap fileExtension=".oga" mimeType="audio/ogg"/>
<mimeMap fileExtension=".spx" mimeType="audio/ogg"/>
<!-- <mimeMap fileExtension=".svg" mimeType="image/svg+xml"/> -->
</staticContent>
<!--Disable gzip compression (otherwise server pushed data is cut when arriving on the client) -->
<urlCompression doStaticCompression="true" doDynamicCompression="false"/>
<rewrite>
<rules>
<rule name="COW API session creation">
<match url="^session$"/>
<action type="Rewrite" url="SessionProcessing.ashx"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
OriginalL'auteur Pitouli | 2013-03-15
Vous devez vous connecter pour publier un commentaire.
Comment sur l'ajout bon espace de noms pour votre
BusinessLogic(Wrapper)
classe?Si c'est projet de Site Web essayez de supprimer de l'espace de noms complètement dans votre
BusinessLogicWrapper.cs
fichier:Ensuite accéder à votre classe Wrapper comme:
Wrapper.WRITE_TRACE...
using App_Code;
, mais comme il n'est pas un espace de noms... Où pourrais-je trouvé mon nom de projet (je suis vraiment débutant en ASP, et je suis en train de travailler sur un projet que je n'ai pas développé)? Merci en tout cas!Pouvez-vous montrer votre BusinessLogicWrapper.cs code? Au moins du début du fichier...
Ok, j'ai éditer le post initial
Quand vous dites "application web", je crois que vous dire que c'est un "Projet de Site Web" (Fichier->Nouveau Site Web). Les Projets d'Application Web ont des espaces de noms et les noms de projet.
Désolé de ne pas en utilisant le vocabulaire approprié. Oui, c'est un Projet de Site Web.
OriginalL'auteur Nenad
Une solution de contournement (laisser des commentaires si vous avez une meilleure idée) a été de mettre le dossier bin de mon répertoire virtuel dans le répertoire racine.
Remarque que je n'ai pas de serveur "erreurs" (au moins pour le moment), mais que le site ne fonctionne toujours pas (je pense qu'il y a des problèmes avec chemin d'accès aux différents fichiers...).
Ce n'est pas une réponse définitive (à partir de moi-même à moi-même et les autres), mais peut-être qu'il pourrait donner des idées aux plus expérimentés!
OriginalL'auteur Pitouli