Vorbereitungen für Windows Communication Foundation: Einfachere Integration in der ZukunftAnticipating Adopting the Windows Communication Foundation: Easing Future Integration

Wenn Sie heute ASP.NET verwenden und vorhaben, zukünftig WCFWCF zu verwenden, bietet dieses Thema Tipps, die gewährleisten, dass neue ASP.NET-Webdienste mit WCFWCF-Anwendungen ordnungsgemäß zusammenwirken.If you use ASP.NET today, and anticipate using WCFWCF in the future, this topic provides guidance to ensure that new ASP.NET Web services will work well together with WCFWCF applications.

Allgemeine EmpfehlungenGeneral Recommendations

Übernehmen Sie ASP.NET 2.0 auch für neue Dienste.Adopt ASP.NET 2.0 for any new services. Dadurch stellen Sie den Zugriff auf die Verbesserungen und Erweiterungen der neuen Version bereit.Doing so will provide access to the improvements and enhancements of the new version. Sie erhalten so auch die Möglichkeit, ASP.NET 2.0-Komponenten zusammen mit WCFWCF-Komponenten in derselben Anwendung zu verwenden.However, it will also allow for the possibility of using ASP.NET 2.0 components together with WCFWCF components in the same application.

ProtokolleProtocols

Verwenden Sie die neue Funktion von ASP.NET 2.0 zum Überprüfen der Konformität mit WS-I Basic Profile 1.1:Use ASP.NET 2.0’s new facility for validating conformity to the WS-I Basic Profile 1.1:

[WebService(Namespace = "http://tempuri.org/")]  
[WebServiceBinding(  
     ConformsTo = WsiProfiles.BasicProfile1_1,  
     EmitConformanceClaims=true)]  
public interface IEcho  

ASP.NET-Webdienste, die mit WS-I Basic Profile 1.1 übereinstimmen, sind mit WCFWCF-Clients interoperabel, wenn die von WCFWCF vordefinierte BasicHttpBinding-Bindung verwendet wird.ASP.NET Web services that conform to WS-I Basic Profile 1.1 will be interoperable with WCFWCF clients by using WCFWCF predefined binding, BasicHttpBinding.

DienstentwicklungService Development

Verwenden Sie das SoapDocumentServiceAttribute-Attribut nicht, um Nachrichten basierend auf dem voll qualifizierten Namen des Textelements der SOAP-Nachricht anstatt des SOAPAction HTTP-Headers an Methoden weiterzuleiten.Avoid using the SoapDocumentServiceAttribute attribute to have messages routed to methods based on the fully-qualified name of the body element of the SOAP message rather than the SOAPAction HTTP header. WCFWCF verwendet den SOAPAction-HTTP-Header zum Weiterleiten von Nachrichten. uses the SOAPAction HTTP header for routing messages.

DatendarstellungData Representation

Die XML, in die XmlSerializer standardmäßig einen Typ serialisiert, ist semantisch identisch mit der XML, in die DataContractSerializer einen Typ serialisiert, vorausgesetzt, der Namespace ist für die XML explizit definiert.The XML into which XmlSerializer serializes a type by default is semantically identical to the XML into which the DataContractSerializer serializes a type, provided the namespace for the XML is explicitly defined. Wenn ein Datentyp für die Verwendung mit ASP.NET-Webdiensten in Antizipation einer zukünftigen WCFWCF-Integration definiert wird, gehen Sie wie folgt vor:When defining a data type for use with ASP.NET Web services in anticipation of adopting WCFWCF in the future, do the following:

  1. Definieren Sie den Typ mit .NET Framework-Klassen und nicht mit dem XML-Schema.Define the type using .NET Framework classes rather than XML Schema.

  2. Fügen Sie der Klasse lediglich SerializableAttribute und XmlRootAttribute hinzu, wobei Sie mit dem zweiten Attribut den Namespace für den Typ explizit definieren.Add only the SerializableAttribute and the XmlRootAttribute to the class, using the latter to explicitly define the namespace for the type. Fügen Sie keine zusätzlichen Attribute aus dem System.Xml.Serialization-Namespace hinzu, um zu steuern, wie die .NET Framework-Klasse in XML übersetzt wird.Do no add additional attributes from the System.Xml.Serialization namespace to control how the .NET Framework class is to be translated into XML.

Wenn Sie diese Vorgehensweise wählen, sollte es später kein Problem darstellen, die .NET-Klassen in Datenverträge umzuwandeln, indem Sie DataContractAttribute und DataMemberAttribute hinzufügen, ohne die XML erheblich zu ändern, in die die Klassen für die Übertragung serialisiert werden.By adopting this approach, you should be able to later make the .NET classes into data contracts with the addition of the DataContractAttribute and DataMemberAttribute without significantly altering the XML into which the classes are serialized for transmission. Die von den ASP.NET-Webdiensten verwendeten Typen können von WCFWCF als Datenverträge verarbeitet werden, was u. a. zu einer höheren Leistung der WCFWCF-Anwendungen führt.The types used in messages by ASP.NET Web services will be able to be processed as data contracts by WCFWCF applications, yielding, amongst other benefits, better performance in WCFWCF applications.

SicherheitSecurity

Vermeiden Sie die Verwendung der von den Internetinformationsdiensten (IIS) bereitgestellten Authentifizierungsoptionen.Avoid using the authentication options provided by Internet Information Services (IIS). Diese werden von WCFWCF-Clients nicht unterstützt.WCFWCF clients do not support them. Falls ein Dienst gesichert werden muss, verwenden Sie die von WCFWCF bereitgestellten Optionen, da diese Optionen leistungsstärker sind und auf Standardprotokollen basieren.If a service needs to be secured, use the options provided by WCFWCF, because these options are richer and are based on standard protocols.

Siehe auchSee Also

Vorbereitungen für Windows Communication Foundation: Einfachere Migration in der ZukunftAnticipating Adopting the Windows Communication Foundation: Easing Future Migration