Tutorial zur Verwendung von Anwendungen in ASP.NET C#

巴扎黑
Freigeben: 2017-05-14 17:07:56
Original
2369 Leute haben es durchsucht

Dieser Artikel stellt Ihnen hauptsächlich die Verwendung von Application in ASP.NET C# vor. Die Einführung im Artikel ist sehr detailliert Ich brauche es. Folgen wir dem Herausgeber, um gemeinsam zu lernen.

Anwendungsobjekt

Die Lebensdauer des Anwendungsobjekts ist so lang wie die Lebensdauer der Webanwendung, und die Lebensdauer wird anhand der Webanwendung bestimmt Webseite Wenn der Zugriff beginnt, wird das HttpApplication-Klassenobjekt Application automatisch erstellt. Wenn keine Webseite aufgerufen wird, wird das Application-Objekt automatisch widerrufen. Daher haben auch die Variablen im Anwendungsobjekt die gleiche Lebensdauer und alle Webseiten in der Webanwendung können auf die Variablen zugreifen. Daher können im Anwendungsobjekt einige globale öffentliche Variablen eingerichtet werden. Da die im Anwendungsobjekt gespeicherten Werte von allen Webseiten der Anwendung gelesen werden können, eignen sich die Eigenschaften des Anwendungsobjekts auch zum Übertragen von Informationen zwischen Webseiten der Bewerbung.

Anwendungsobjekt hat die folgenden Hauptverwendungen:

  • l Speichern und Aufzeichnen der Anzahl der Personen online oder die Gesamtzahl der Personen, die die Website-Variable besuchen.

  • l Speichert die neuesten Nachrichten, die von der Website geteilt werden, damit alle Webseiten aktualisiert werden können.

  • l Erfassen Sie die Anzahl oder Zeit der Klicks auf dieselbe Anzeige auf jeder Webseite der Website.

  • l Speichert Datenbankdaten, die von allen Webseiten verwendet werden.

  • l Kommunikation zwischen verschiedenen Benutzern, z. B. Mehrbenutzer-Chatrooms, Mehrbenutzer-Spiele usw.

Über ASP Die Verwendung von .NET-Anwendungen unterscheidet sich stark von der Sitzung. Werfen wir einen Blick auf die ausführliche Einführung:

Nutzung der Sitzung

1 Wenn der Session.Add-Name derselbe ist , wird es nicht wiederholt, sondern überschrieben.


Session.Add("s1", 1);
Session.Add("s1", 2);
// s1 最终只有一个值,就是 2。
Nach dem Login kopieren

2. Bei Namen wird die Groß- und Kleinschreibung ignoriert.


Session.Add("s1", 1);
Response.Write(Session["S1"]); // 值为 1
Nach dem Login kopieren

3. Der Wert kann unmittelbar nach dem Hinzufügen von Sitzungen abgerufen werden (dasselbe gilt für Entfernen). Dies unterscheidet sich von Cookie. was bis zum nächsten Mal warten muss. Es existiert nur eine Seite.


Session.Add("s1", 1);
Response.Write(Session["s1"] == null); // False,它不为 null
Nach dem Login kopieren

4. Der gespeicherte Sitzungsdatentyp ist Objekt. Zum Konvertieren verwenden Sie am besten „Konvertieren“.


Convert.ToInt32(Session["s1"]);
Nach dem Login kopieren

Wenn Sie in einen String konvertieren, verwenden Sie am besten Convert.ToString() anstelle von Session["s1"].ToString(), denn wenn Session Wenn es null ist, wird ein Fehler gemeldet, wenn die Methode später verwendet wird.

5. Verwenden Sie die Sitzung in einer Klasse.


System.Web.HttpContext.Current.Session
Nach dem Login kopieren

Nutzung der Anwendung

Problem mit doppelten Namen


HttpContext.Current.Application.Add("key1", "value1");
HttpContext.Current.Application.Add("key2", "value2");
HttpContext.Current.Application.Add("KEY2", "value3"); // name 忽略大小写

int count = HttpContext.Current.Application.Count; // 3 个
string[] keys = return HttpContext.Current.Application.AllKeys; // key1、key2、key2
string s = (string)HttpContext.Current.Application.Get("key2"); // value2
string s2 = (string)HttpContext.Current.Application.Get(2); // value3
Nach dem Login kopieren

Der Code ist wie oben und die Ergebnisse sind in den Anmerkungen aufgeführt. Es ist ersichtlich, dass die Anwendung, wenn sie auf denselben Schlüsselwert stößt, weder einen Fehler meldet noch den vorherigen überschreibt, sondern gleichzeitig existiert. Wenn Sie den Schlüsselnamen verwenden, um den Wert abzurufen, erhalten Sie den ersten entsprechenden Wert mit demselben Namen. Wenn Sie den letzten abrufen müssen, verwenden Sie den Index.

Wenn wir auf denselben Namen stoßen möchten, können wir ihn überschreiben.


HttpContext.Current.Application.Add("key1", "value1");
// HttpContext.Current.Application.Add("key2", "value2");

string name = "key2";
object obj = HttpContext.Current.Application.Get(name);
if (obj == null)
{
 // 不存在,直接添加
 HttpContext.Current.Application.Add(name, "value2");
}
else
{
 // 存在,不能直接调用 Add 方法,这样会造成两个相同 name 的条目
 // obj = "value3"; // 这种方法行不通
 HttpContext.Current.Application[name] = "value3";
}

return (string)HttpContext.Current.Application[name]; // 用 [] 取值时,等同于 Get 方法
Nach dem Login kopieren

Im obigen Code direkt Das Ändern von obj funktioniert nicht. Wenn Sie jedoch auf ein Objekt stoßen, funktioniert der folgende Code. Hinweis: Dies ist ein Wissenspunkt zur C#-Wertreferenz und Adressreferenz und hat nichts mit der Anwendung zu tun.


((Site)obj).Url = "222"; // 行得通
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonTutorial zur Verwendung von Anwendungen in ASP.NET C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!