J'ai entendu de bonnes choses à propos de Softsys Hosting et j'ai donc décidé de leur transférer ma solution ASP.NET MVC. Mais ça ne marcherait pas sur eux. J'ai été en mesure de localiser le problème à mes gestionnaires d'événements BeginRequest. Si je les avais, j'aurais une erreur. Voici mon code.Pourquoi mon hôte (softsyshosting.com) ne peut-il pas prendre en charge les gestionnaires d'événements BeginRequest et EndRequest?
protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
this.BeginRequest += new EventHandler(MvcApplication_BeginRequest);
this.EndRequest += new EventHandler(MvcApplication_EndRequest);
}
void MvcApplication_EndRequest(object sender, EventArgs e)
{
}
void MvcApplication_BeginRequest(object sender, EventArgs e)
{
}
Je pourrais reproduire le problème en créant simplement l'application ASP.NET MVC par défaut et en ajoutant le code ci-dessus. La chose étrange est que ce code a bien fonctionné sur mon ancien hôte et qu'il ne plante que sur mon nouvel hôte (partagé). Si j'ai ces gestionnaires d'événements dans mon code, j'obtenir cette erreur:
Server Error in '/' Application. Object reference not set to an instance of an object. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[NullReferenceException: Object reference not set to an instance of an object.] System.Web.PipelineModuleStepContainer.GetStepArray(RequestNotification notification, Boolean isPostEvent) +27 System.Web.PipelineModuleStepContainer.GetEventCount(RequestNotification notification, Boolean isPostEvent) +11 System.Web.PipelineStepManager.ResumeSteps(Exception error) +205 System.Web.HttpApplication.BeginProcessRequestNotification(HttpContext context, AsyncCallback cb) +91 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +514
J'ai essayé de dépannage avec ce Softsys, mais ils ne sont pas très utiles, au fond ils ont juste confirmé que j'avais tourné le « Pipeline ASP.NET (MVC) "dans mon panneau de contrôle d'administration.
Quelqu'un peut-il:
- Dites-moi si je suis quelque chose de mal codé
- Montrez-moi un travail autour
- Expliquez-moi pourquoi cette erreur est INTERVENUES sur un hôte et non l'autre.
serait-ce pas plutôt une question pour le soutien de votre hébergeur? –
Utilisez-vous NHibernate par hasard? –
Oliver, oui j'ai essayé d'obtenir le support de Softsys Hosting, mais ils n'ont pas été très utiles. Ils voulaient me faire payer 95 $/HR pour résoudre ce problème. J'étais heureux avec tout le reste à propos d'eux et je ne veux pas les abandonner si c'est quelque chose que je fais mal. Dreas, non, je n'utilise pas NHibernate. – Whozumommy