Derzeit erhalte ich den Fehler "eine Objektreferenz ist für die nichtstatische Feldmethode oder -eigenschaft erforderlich". Mein Code ist wie folgt:Wie erstelle ich eine Instanz von HttpContext?
using MyApp.Global;
namespace MyApp.MyNamespace
{
public class MyClass:System.Web.UI.Page
{
//Toolbox is inside Global, GetCurrentCookieData is a static method
private CookieData cd = Toolbox.GetCurrentCookieData(HttpContext.Current);
//the above was changed and resolved the first error, but another error
//just popped up. Below, I get the error: cd denotes field
//where class was expected
private int CompanyID = Util.GetCompanyIDByUser(cd.Users);
protected override void OnLoad(EventArgs e)
{
//snip
}
protected void MyEventHandler(object sender, EventArgs e)
{
//snip
}
}
}
Derzeit jeder meiner Methoden muss cd verwenden, so dass stattdessen eine Variable innerhalb jeder Methode zum Erstellen, ich war auf der Suche nach einer Möglichkeit, es in der Klasse zu erklären und habe es verfügbar zu allen Methoden. Wenn ich versuche, CD innerhalb der Methoden zu setzen, funktioniert es gut. Ich habe gegoogelt, und es scheint, dass ich eine Instanz von Page haben müsste, um dort zu verwenden, aber das funktioniert nicht. Ich verstehe wirklich nicht, wie das funktioniert. Kann mir jemand in die richtige Richtung zeigen?
Edit: Ich fügte static keyword zu cd, um die 'CD identifiziert Feld, in dem Klasse erwartet wurde' Fehler. Ist das eine gute Umsetzung?
Edit: Ich werde nur die richtige Antwort unten markieren und eine neue Frage stellen, wie ich denke, es verdient.
Es sieht so aus, als ob das funktioniert hat, aber ich muss meine Frage klären, weil es so aussieht, als ob etwas mehr dran ist. –