War diese Seite hilfreich?
Ihr Feedback ist uns wichtig. Teilen Sie uns Ihre Meinung mit.
Weiteres Feedback?
1500 verbleibende Zeichen
GenerateScriptTypeAttribute-Klasse
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

GenerateScriptTypeAttribute-Klasse

Gibt an, dass der Servertyp im Proxyobjekt generiert werden muss. Die Klasse erlaubt keine Vererbung.

System.Object
  System.Attribute
    System.Web.Script.Services.GenerateScriptTypeAttribute

Namespace:  System.Web.Script.Services
Assembly:  System.Web.Extensions (in System.Web.Extensions.dll)

[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method|AttributeTargets.Interface, AllowMultiple = true)]
public sealed class GenerateScriptTypeAttribute : Attribute

Der GenerateScriptTypeAttribute-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeGenerateScriptTypeAttributeInitialisiert eine neue Instanz der GenerateScriptTypeAttribute-Klasse für den angegebenen Typ.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftScriptTypeIdRuft den Typenbezeichner für den Typmetadatenmarker ab oder legt diesen fest.
Öffentliche EigenschaftTypeRuft den Typ ab, der im Proxyobjekt eingeschlossen wird.
Öffentliche EigenschaftTypeId Bei Implementierung in einer abgeleiteten Klasse wird ein eindeutiger Bezeichner für dieses Attribute abgerufen. (Von Attribute geerbt.)
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeEqualsInfrastruktur. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist. (Von Attribute geerbt.)
Öffentliche MethodeGetHashCodeGibt den Hashcode für diese Instanz zurück. (Von Attribute geerbt.)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeIsDefaultAttributeBeim Überschreiben in einer abgeleiteten Klasse wird angegeben, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist. (Von Attribute geerbt.)
Öffentliche MethodeMatchBeim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht. (Von Attribute geerbt.)
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Zum Seitenanfang

  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetIDsOfNamesOrdnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoRuft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoCountRuft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.InvokeStellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit. (Von Attribute geerbt.)
Zum Seitenanfang

Auf AJAX-aktivierten ASP.NET-Websites kann ASP.NET für Methoden einer Webdienstklasse automatisch Proxyobjekte generieren. Diese Aktion wird für die meisten Typen der obersten Ebene für die Eingabeparameter und Rückgabewerte beliebiger mit ScriptServiceAttribute markierter Webmethoden ausgeführt.

Wenn Sie in anderen Fällen für Servertypen generierte Objekte über einen Proxyserver leiten, müssen Sie GenerateScriptTypeAttribute manuell anwenden. Sie können GenerateScriptTypeAttribute auf den Webdienst selbst oder auf eine beliebige Webdienstmethode oder Methode einer static-Seite anwenden, die mit WebMethodAttribute markiert ist.

Selbst wenn der Typ einem Eingabeparameter oder Rückgabewert einer Webdienstmethode entspricht, wird der Proxy in einigen Fällen nicht automatisch generiert. In diesem Fall müssen Sie das Proxyobjekt für den Typ mit dem GenerateScriptTypeAttribute-Attribut generieren. Dies kann bei generischen Typen und Arrays der Fall sein, die mehrere Argumente aufweisen, z. B. Dictionary<string,<T>>.

Auf eine Webdienstklasse oder -methode können eine oder mehrere Instanzen von GenerateScriptTypeAttribute angewendet werden. ASP.NET generiert dann eine ECMAScript-Proxyklasse (JavaScript) für jeden Typ der obersten Ebene, auf den von den einzelnen Deklarationen von GenerateScriptTypeAttribute verwiesen wird.

HinweisHinweis

Wenn Sie Proxyobjekte für geschachtelte Typen generieren möchten, müssen Sie GenerateScriptTypeAttribute auf jeden geschachtelten Typ manuell anwenden. ASP.NET generiert nur Proxys für Typen der obersten Ebene und wendet das Attribut nicht automatisch rekursiv auf geschachtelte Typen an.

Weitere Informationen zum Verwenden von Attributen finden Sie unter Erweitern von Metadaten mithilfe von Attributen.

Im folgenden Beispiel wird veranschaulicht, wie GenerateScriptTypeAttribute auf eine Webdienstklasse und auf eine Webmethode angewendet wird. Als Ergebnis sind im Proxyobjekt der ColorObject-Typ und der zugehörige geschachtelte Typ FavoriteColors enthalten.


<%@ WebService Language="C#" Class="Samples.AspNet.ColorService" %>

using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Script.Services;

namespace Samples.AspNet
{

    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ScriptService]
    [GenerateScriptType(typeof(FavoriteColors))]
    public class ColorService : System.Web.Services.WebService
    {

        [GenerateScriptType(typeof(ColorObject), 
            ScriptTypeId = "Color")]
        [WebMethod]
        public string[] GetDefaultColor()
        {
            // Instantiate the default color object.
            ColorObject co = new ColorObject();

            return co.rgb;
        }

        [WebMethod]
        public string EchoDefaultColor()
        {
            // Instantiate the default color object.
            ColorObject co = new ColorObject();

            return co.defaultColor.ToString();
        }
    }

    public class ColorObject
    {
        public string[] rgb =
            new string[] { "00", "00", "FF" };
        public FavoriteColors defaultColor = FavoriteColors.Blue;
    }

    public enum FavoriteColors
    {
        Black,
        White,
        Blue,
        Red
    }
}


.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Community-Beiträge

HINZUFÜGEN
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2015 Microsoft