Noemax
Home
Products
Buy Now
Downloads
Support
Your Account
Contact Us Bookmark and Share
Support
Class Reference
WCF Binding Config Wizard
Sample Projects
Premium Support
Free Support
Newsletter

Home » Support » Sample Projects

Sample Projects

Index
Basic authentication over SSL with LiteHTTPS in the BasicHttpBinding

Binary data transmission to GlassFish using Fast Infoset and LiteHTTP

Compare Noemax.GZip vs System.IO.Compression on .NET 4
Compare the performance and compactness of LZF3, LZF and GZIP
Compare various Fast Infoset profiles and compression algorithms
Compress both requests and responses when size is above threshold
Duplex communication with .NET CF using SOAP/TCP Duplex

Duplex streaming with SOAP/TCP Duplex and message compression

Duplex streaming with Windows security and transport compression
Envelope behavior provides compression when message security is used
Expose the WSDL with LiteHTTP in a custom binding in code
Fast Infoset and HTTP compression between Silverlight 4 and IIS

Fast Infoset and HTTP negotiation and compression with REST

Fast Infoset for cross-platform interoperability with Apache CXF
Fast Infoset profile details specified in a configuration file
Host a service in .NET CF by using LiteHTTP
Host a service in .NET CF by using the BasicSoapTcpBinding in code

LiteHTTP in a .NET CF client proxy generated by NetCFSvcUtil.exe

Plug WCF-Xtensions in the BasicHttpBinding in a configuration file
Plug WCF-Xtensions in the NetTcpBinding in a configuration file
RESTful communication between .NET and Jersey hosted in Grizzly
SOAP/TCP in a .NET CF client proxy generated by NetCFSvcUtil.exe
SOAP/TCP with Fast Infoset and compression in code

Speed up LINQ over WCF with Fast Infoset, LZF3 and EnumerableStream

Stream binary data efficiently using Fast Infoset over HTTP

SSL security with LiteHTTPS in a custom binding in code

Transparent configuration using the XChannelFactory and XServiceHost

Write/read compressed Fast Infoset documents using the XmlSerializer
Write/read Fast Infoset documents using the DataContractSerializer

Basic authentication over SSL with LiteHTTPS in the BasicHttpBinding

This sample project demonstrates how to (a) perform basic authentication over SSL with LiteHTTPS as transport, (b) use Fast Infoset as message encoding, and (c) configure the BasicHttpBinding in configuration. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

Note that (i) LiteHTTPS does not require the use of a tool to configure a port with an X.509 certificate, and (ii) for this sample to work you must have an appropriate X.509 certificate on both sides and make the necessary code changes to use this certificate.

  Client Server
Platform .NET Framework .NET Framework
Configuration In configuration In configuration
Binding BasicHttpBinding BasicHttpBinding
Content negotiation No No
Message encoding Fast Infoset requests Fast Infoset responses
Compression No No
Transport LiteHTTPS LiteHTTPS

Binary data transmission to GlassFish using Fast Infoset and LiteHTTP

This sample project demonstrates how to (a) transmit binary data to an Oracle GlassFish server using Fast Infoset as message encoding, (b) use LiteHTTP as transport, and (c) configure a custom binding in a configuration file for the .NET client and in code for the .NET CF client. This sample exposes a single service which is accessed by two different clients. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client A Client B Server
Platform .NET Framework .NET Compact Framework Oracle GlassFish
Configuration In configuration file In code  
Binding CustomBinding CustomBinding  
Content negotiation No No No
Message encoding Fast Infoset requests Fast Infoset requests Fast Infoset responses
Compression No No No
Transport LiteHTTP LiteHTTP HTTP

Compare Noemax.GZip vs System.IO.Compression on .NET 4

This sample project demonstrates how to create a simple benchmark that compares the relative performance and compactness of the GZIP implementation available in the Noemax.GZip namespace of DotNetCompression versus the one in the System.IO.Compression namespace of .NET 4. Uses DotNetCompression; you must add a reference to Noemax.GZip.

Note that for this benchmark to return meaningful results you must (i) build it in release mode, and (ii) run it outside Visual Studio.

Compare the performance and compactness of LZF3, LZF and GZIP

This sample project demonstrates how to create a simple benchmark that compares the relative performance and compactness of the LZF3, LZF and GZIP algorithms when compressing a file. Uses DotNetCompression; you must add a reference to Noemax.GZip and Noemax.Lzf.

Note that for this benchmark to return meaningful results you must (i) build it in release mode, and (ii) run it outside Visual Studio.

Compare various Fast Infoset profiles and compression algorithms

This sample project provides a basis for creating your own benchmark that compares the relative performance and compactness of different Fast Infoset writer profiles in combination with various compression algorithms. Uses FastInfoset.NET; you must add a reference to Noemax.FastInfoset.

Note that for this benchmark to return meaningful results you must (i) modify it to use real data, (ii) build it in release mode, and (iii) run it outside Visual Studio.

Compress both requests and responses when size is above threshold

This sample project demonstrates how to (a) compress both requests and responses when their size exceeds a threshold, (b) use LiteHTTP as transport, (c) use Fast Infoset as message encoding, (d) use HTTP content negotiation and compression, and (e) configure a custom binding in a configuration file. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In configuration file In configuration file
Binding CustomBinding CustomBinding
Content negotiation Yes Yes
Message encoding Fast Infoset requests (no negotiation) Fast Infoset responses
Compression Compressed requests, with threshold (optimistic) Compressed responses, with threshold
Transport LiteHTTP LiteHTTP

Duplex communication with .NET CF using SOAP/TCP Duplex

This sample project demonstrates how to (a) perform duplex communication with a .NET CF client using SOAP/TCP Duplex as transport, (b) use Fast Infoset as message encoding, (c) use message compression, and (d) configure a custom binding in code. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Compact Framework .NET Framework
Configuration In code In code
Binding CustomBinding CustomBinding
Content negotiation No No
Message encoding Fast Infoset requests & responses

Fast Infoset responses & responses

Compression Compressed requests & responses Compressed responses & responses
Transport SOAP/TCP Duplex SOAP/TCP Duplex

Duplex streaming with SOAP/TCP Duplex and message compression

This sample project demonstrates how to (a) perform duplex communication in streamed mode using SOAP/TCP Duplex as transport, (b) use Fast Infoset as message encoding, (c) use message compression, and (d) configure a custom binding in code for the client and in a configuration file for the server. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In code In configuration file
Binding CustomBinding CustomBinding
Content negotiation No No
Message encoding Fast Infoset requests & responses Fast Infoset requests & responses
Compression Compressed requests & responses Compressed requests & responses
Transport SOAP/TCP Duplex (streamed) SOAP/TCP Duplex (streamed)

Duplex streaming with Windows security and transport compression

This sample project demonstrates how to (a) perform duplex communication in streamed mode using SOAP/TCP Duplex as transport, and perform duplex communication in buffered mode using TCP as transport, (b) use the Windows stream security transport upgrade, (c) use transport compression, (d) use Fast Infoset as message encoding, and (f) configure custom bindings in code. This sample exposes two services each of which is accessed by a different client. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In code In code
Binding CustomBinding CustomBinding
Content negotiation No No
Message encoding Fast Infoset requests & responses Fast Infoset requests & responses
Compression Compressed requests & responses Compressed requests & responses
Transport A SOAP/TCP Duplex (streamed) SOAP/TCP Duplex (streamed)
Transport B TCP TCP

Envelope behavior provides compression when message security is used

This sample project demonstrates how to (a) use the Envelope behavior to provide compression with message security, (b) use Fast Infoset as message encoding, and (c) configure the WSHttpBinding in code. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

Note that for this sample to work you must have an appropriate X.509 certificate on both sides and make the necessary code changes to use this certificate.

  Client Server
Platform .NET Framework .NET Framework
Configuration In code In code
Binding WSHttpBinding WSHttpBinding
Content negotiation No No
Message encoding Fast Infoset requests Fast Infoset responses
Compression Compressed requests Compressed responses
Transport HTTP HTTP

Expose the WSDL with LiteHTTP in a custom binding in code

This sample project demonstrates how to (a) expose the service's WSDL when using LiteHTTP as transport, (b) use Fast Infoset as message encoding, (c) use HTTP content negotiation and compression, (d) compress requests when their size exceeds a threshold, and (e) configure a custom binding in a configuration file for the client and in code for the server. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In configuration file In code
Binding CustomBinding CustomBinding
Content negotiation Yes Yes
Message encoding Fast Infoset requests (no negotiation) Fast Infoset responses
Compression Compressed requests, with threshold (optimistic) Compressed responses
Transport LiteHTTP LiteHTTP

Fast Infoset and HTTP compression between Silverlight 4 and IIS

This sample project demonstrates how to (a) use WCF-Xtensions components in a Silverlight application and in an IIS-hosted server, (b) use LiteHTTP as transport, (c) use Fast Infoset as message encoding, (d) use the HTTP compression provided by LiteHTTP on the client, and use HTTP content negotiation and compression on the server, and (e) configure a custom binding in code for the client and in a configuration file for the server. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform Silverlight 4 .NET Framework4 (IIS-hosted)
Configuration In code In configuration file
Binding CustomBinding CustomBinding
Content negotiation Yes Yes
Message encoding Fast Infoset requests Fast Infoset responses
Compression Compressed requests Compressed responses
Transport LiteHTTP HTTP

Fast Infoset and HTTP negotiation and compression with REST

This sample project demonstrates how to (a) inject WCF-Xtensions components into the WebHttpBinding for REST-based communication, (b) use Fast Infoset as message encoding on the client, and support both text XML and Fast Infoset as message encodings on the server, (c) use HTTP content negotiation and compression, and (d) configure the WebHttpBinding in code for the client and in a configuration file for the server. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In code In configuration file
Binding WebHttpBinding WebHttpBinding
Content negotiation Yes Yes
Message encoding Fast Infoset requests (no negotiation) Fast Infoset responses
Compression Compressed requests (adaptive) Compressed responses
Transport HTTP HTTP

Fast Infoset for cross-platform interoperability with Apache CXF

This sample project demonstrates how to (a) use Fast Infoset as message encoding for cross-platform communication between .NET and an Apache CXF server, and (d) configure a custom binding in a configuration file. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework Apache CXF
Configuration In configuration file  
Binding CustomBinding  
Content negotiation No No
Message encoding Fast Infoset requests Fast Infoset responses
Compression No No
Transport HTTP HTTP

Fast Infoset profile details specified in a configuration file

This sample project demonstrates how to (a) specify the Fast Infoset writer profile details in the configuration file of the server, (b) use LiteHTTP as transport, (c) support both text XML and Fast Infoset as message encodings, (d) use HTTP content negotiation and compression, and (e) configure a custom binding in a configuration file. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In configuration file In configuration file
Binding CustomBinding CustomBinding
Content negotiation Yes Yes
Message encoding Text XML requests (pessimistic) Fast Infoset responses
Compression Compressed requests (optimistic) Compressed responses
Transport LiteHTTP LiteHTTP

Host a service in .NET CF by using LiteHTTP

This sample project demonstrates how to (a) host a service on .NET CF using LiteHTTP as transport, and consume it using a .NET CF client, (b) support both text XML and Fast Infoset as message encodings, (c) use HTTP content negotiation and compression, and (d) configure a custom binding in code. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Compact Framework .NET Compact Framework
Configuration In code In code
Binding CustomBinding CustomBinding
Content negotiation Yes Yes
Message encoding Text XML requests (pessimistic) Fast Infoset responses
Compression Compressed requests (optimistic) Compressed responses
Transport LiteHTTP LiteHTTP

Host a service in .NET CF by using the BasicSoapTcpBinding in code

This sample project demonstrates how to (a) host a service on .NET CF using the BasicSoapTcpBinding, and consume it using a .NET CF client, (b) use SOAP/TCP as transport, (c) use Fast Infoset as message encoding, and (d) configure the BasicSoapTcpBinding in code. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Compact Framework .NET Compact Framework
Configuration In code In code
Binding BasicSoapTcpBinding BasicSoapTcpBinding
Content negotiation No No
Message encoding Fast Infoset requests Fast Infoset responses
Compression No No
Transport SOAP/TCP SOAP/TCP

LiteHTTP in a .NET CF client proxy generated by NetCFSvcUtil.exe

This sample project demonstrates how to (a) inject WCF-Xtensions components into a .NET CF client proxy generated by NetCFSvcUtil.exe, (b) use LiteHTTP as transport, (c) use Fast Infoset as message encoding on the client, and support both text XML and Fast Infoset as message encodings on the server, (d) use HTTP content negotiation and compression, and (e) configure a custom binding in client proxy code and in a configuration file for the server. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Compact Framework .NET Framework
Configuration In code In configuration file
Binding CustomBinding CustomBinding
Content negotiation Yes Yes
Message encoding Fast Infoset requests (no negotiation) Fast Infoset responses
Compression Uncompressed requests (pessimistic) Compressed responses
Transport LiteHTTP LiteHTTP

Plug WCF-Xtensions in the BasicHttpBinding in a configuration file

This sample project demonstrates how to (a) plug WCF-Xtensions components in the configuration of the BasicHttpBinding in a configuration file, (b) use LiteHTTP as transport, (c) support both text XML and Fast Infoset as message encodings, and (d) use HTTP content negotiation and compression. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In configuration file In configuration file
Binding BasicHttpBinding BasicHttpBinding
Content negotiation Yes Yes
Message encoding Text XML requests (pessimistic) Fast Infoset responses
Compression Uncompressed requests (pessimistic) Compressed responses
Transport LiteHTTP LiteHTTP

Plug WCF-Xtensions in the NetTcpBinding in a configuration file

This sample project demonstrates how to (a) plug WCF-Xtensions components in the configuration of the NetTcpBinding in a configuration file, (b) perform duplex communication using SOAP/TCP Duplex as transport, (c) use Fast Infoset as message encoding, and (d) use message compression. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In configuration file In configuration file
Binding NetTcpBinding NetTcpBinding
Content negotiation No No
Message encoding Fast Infoset requests & responses Fast Infoset requests & responses
Compression Compressed requests & responses Compresses responses & responses
Transport SOAP/TCP Duplex SOAP/TCP Duplex

RESTful communication between .NET and Jersey hosted in Grizzly

This sample project demonstrates how to perform cross-platform communications between .NET and the Jersey RESTful framework hosted in Grizzly when using (a) Fast Infoset as message encoding, (b) HTTP content negotiation and compression, and (c) LiteHTTP as transport. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework Jersey (Grizzly-hosted)
Configuration In configuration file  
Binding webHttpBinding  
Content negotiation Yes No
Message encoding Fast Infoset requests (no negotiation) Fast Infoset responses
Compression Compressed requests (optimistic) No
Transport LiteHTTP HTTP

SOAP/TCP in a .NET CF client proxy generated by NetCFSvcUtil.exe

This sample project demonstrates how to (a) inject WCF-Xtensions components into a .NET CF client proxy generated by NetCFSvcUtil.exe, (b) use SOAP/TCP as transport, (c) use Fast Infoset as message encoding, (d) use message compression, and (e) configure a custom binding in client proxy code and in a configuration file for the server. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Compact Framework .NET Framework
Configuration In code In configuration file
Binding CustomBinding CustomBinding
Content negotiation No No
Message encoding Fast Infoset requests Fast Infoset responses
Compression Compressed requests Compressed responses
Transport SOAP/TCP SOAP/TCP

SOAP/TCP with Fast Infoset and compression in code

This sample project demonstrates how to (a) use SOAP/TCP as transport, (b) use Fast Infoset as message encoding, (c) use message compression, and (d) configure a custom binding in code. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In configuration file In configuration file
Binding CustomBinding CustomBinding
Content negotiation No No
Message encoding Fast Infoset requests Fast Infoset responses
Compression Compressed requests Compressed responses
Transport SOAP/TCP SOAP/TCP

Speed up LINQ over WCF with Fast Infoset, LZF3 and EnumerableStream

This sample project uses the Northwind database to demonstrate how to reduce the size and increase the performance of large LINQ queries over WCF by using (a) the Fast Infoset message encoding, (b) HTTP content negotiation and compression using the LZF3 algorithm, and (c) the EnumerableStream behavior to serialize the queries in streaming mode. The XBindingConfigurator and the XServiceHost are used to transparently configure the client's and the server's BasicHttpBinding respectively. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In configuration file In code
Binding BasicHttpBinding BasicHttpBinding
Content negotiation Yes Yes
Message encoding Fast Infoset requests (no negotiation) Fast Infoset responses
Compression Compressed requests (adaptive) Compressed responses
Transport HTTP HTTP

Stream stream binary data efficiently using Fast Infoset over HTTP

This sample project demonstrates how to (a) stream binary data over HTTP using Fast Infoset as message encoding, and (b) configure a custom binding in code for the client and in a configuration file for the server. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

  Client Server
Platform .NET Framework .NET Framework
Configuration In code In configuration file
Binding CustomBinding CustomBinding
Content negotiation No No
Message encoding Fast Infoset requests Fast Infoset responses
Compression No No
Transport HTTP (streamed) HTTP (streamed)

SSL security with LiteHTTPS in a custom binding in code

This sample project demonstrates how to (a) use SSL security with LiteHTTPS as transport, (b) use Fast Infoset as message encoding, and (c) configure a custom binding in code. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

Note that (i) LiteHTTPS does not require the use of a tool to configure a port with an X.509 certificate, and (ii) for this sample to work you must have an appropriate X.509 certificate on both sides and make the necessary code changes to use this certificate.

  Client Server
Platform .NET Framework .NET Framework
Configuration In code In code
Binding CustomBinding CustomBinding
Content negotiation No No
Message encoding Fast Infoset requests Fast Infoset responses
Compression No No
Transport LiteHTTPS LiteHTTPS

Transparent configuration using the XChannelFactory and XServiceHost

This sample project demonstrates the ease with which the XChannelFactory and XServiceHost can be used to transparently configure a binding with (a) the Fast Infoset message encoding, and (b) HTTP content negotiation and compression or message compression or envelope behavior. Uses WCF-Xtensions; you must add a reference to Noemax.WCFX.

In this sample the XChannelFactory and XServiceHost are used to configure the BasicHttpBinding with the necessary WCF-Xtensions components. Three services are exposed, one self-hosted and two IIS-hosted.

  • The client sends requests to the self-hosted service using Fast Infoset and LZF3 compression, and the server responds using Fast Infoset and LZF3 compression.
  • The client sends requests to the first IIS-hosted service using Fast Infoset and GZIP compression, and the server responds using Fast Infoset and GZIP compression.
  • The client sends requests to the second IIS-hosted service using Fast Infoset and LZMA compression, and the server responds using Fast Infoset and the envelope behavior with LZMA compression.
  Client Server A Server B
Platform .NET Framework .NET Framework .NET Framework (IIS-hosted)
Configuration In code In code In code
Binding BasicHttpBinding BasicHttpBinding BasicHttpBinding
Content negotiation Yes Yes Yes
Message encoding Fast Infoset requests Fast Infoset responses Fast Infoset responses
Compression Compresses requests (optimistic) Compressed responses Compressed responses
Transport HTTP HTTP HTTP

Write/read compressed Fast Infoset documents using the XmlSerializer

This sample project demonstrates how to serialize an object into a compressed Fast Infoset document using the XmlSerializer. Uses FastInfoset.NET; you must add a reference to Noemax.FastInfoset.

Write/read Fast Infoset documents using the DataContractSerializer

This sample project demonstrates how to serialize an object into a Fast Infoset document using the DataContractSerializer. Uses FastInfoset.NET; you must add a reference to Noemax.FastInfoset.

© 2010 Noemax Technologies  |  Terms of Use  |  Privacy Policy  |  Need Help?