The first full public beta of the .NET Framework 3.5 came out Friday night. Here are the downloads to get:
Here are the known issues with the release that apply to WCF:
wcfSvchost.exe requires Administrator permissions
The wcfSvcchost.exe tool requires administrator permissions to run. The Windows Communication Foundation service library template in Orcas will not run correctly if wcfSvchost.exe is not available.
To resolve this issue:
Run Orcas under an Administrator account when you author services by using wcfSvchost.exe.
Windows Communication Foundation (WCF) Service Configuration Editor does not exist on the Orcas Tools menu
The svcConfigEditor.exe is not available on the Tools menu of Orcas. The tool cannot be started from the IDE.
Install the Windows SDK, which includes the editor. The svcConfigEditor.exe is located on the Windows Start menu.
Consuming an ASMX or Windows Communication Foundation (WCF) service for a file-based Web site or application requires NTLM credentials when the user is a not an administrator and is using Remote Desktop
When you use a Web site or application over a Remote Desktop as non-Admin, NTLM authentication is automatically enabled. Therefore, when an ASMX or WCF service is consumed, the following error occurs:
"The HTTP request is unauthorized with client authentication scheme 'Anonymous'. The authentication header received from the server was 'NTLM'."
Note: This is only advised for Web sites that exclusively have WCF services. WCF services security is managed through the configuration in the web.config file, which makes NTLM Authentication unnecessary.
Visual Basic LINQ in Windows Communication Foundation (WCF) Projects and through MSBuild: Option Infer is not propagated
LINQ relies on a new feature called Local Variable Type Inference to implicitly infer strongly-typed local variables based on the value of the right-hand side of an assignment. This feature is controlled by a compiler setting, Option Infer, which by default is on for most new projects. In WCF projects and in MSBuild compilations, the setting for Option Infer is not propagated.
Put "Option Infer On" at the top of all source files that use LINQ.
Windows Communication Foundation (WCF) debugging is not enabled by default
By default, the debugging of WCF Services is not enabled in Orcas because that would break some important non-debugging scenarios, including partial trust HTTP hosting of services and Workflow-first authored services.
As a result, the following debugging scenarios are not enabled out of the box:
Orcas provides a tool to enable and disable the debugging of WCF client-service applications.
To enable WCF debugging:
To disable WCF debugging:
To determine whether WCF debugging is enabled:
Some WCF samples that ship with the .NET Framework 3.5 SDK (Orcas Beta 1) are broken and will not run
The following WCF samples will not work on Orcas:
To run these samples, use .NET Framework 3.0.
The WebScriptServiceHostFactory class does not work with HTTP GET operations
The WebScriptServiceHostFactory class is designed to enable Windows Communication Foundation services to be used to serve data to AJAX-enabled Web pages without having to write WCF configuration settings. In this Orcas release, the WebScriptServiceHostFactory class does not work with WCF operations that have been configured so that the HttpTransferContractAttribute attribute uses the HTTP GET verb. You may get an error about an AddressFilter mismatch if you attempt to use it with such operations.
Avoid using HTTP GET operations and use HTTP POST instead. If this is impossible, then instead of using the WebScriptServiceHostFactory, create a WCF configuration section in web.config or another configuration file as appropriate and then use it to enable an AJAX endpoint. (Also see note 2.4.15 about endpoint URLs that end directly with ".svc".)
Windows Communication Foundation (WCF) AJAX endpoints at URLs immediately ending with ".svc" do not work with HTTP GET operations
In this release, it is possible to use the Windows Communication Foundation to write IIS-hosted services that can be consumed from AJAX-enabled Web pages. These services can be hosted at endpoints with URLs that end directly with ".svc" (for example, "http://example.com/myService.svc") or at endpoints with URLs that end with an additional suffix (for example, "http://example.com/myService.svc/myEndpoint"). In this release, the URLs without a suffix do not work with WCF operations that have been configured with the HttpTransferContractAttribute attribute to use the HTTP GET verb, unless a workaround is applied. You may get an error about an AddressFilter mismatch if you try to use such URLs with GET operations.
There are three ways to resolve this issue.
Adding a Windows Communication Foundation (WCF) service to the ASP.NET AJAX Script Manager Control does not work in Script Inlining mode
In this release, it is possible to use the Windows Communication Foundation to write services that can be consumed from AJAX-enabled pages. To work with the ASP.NET AJAX framework, references to such WCF services must be added to the Script Manager control. The Script Manager control enables you to inline service references by setting the InlineScript property to "true" on a particular service reference in the Services collection. In this release, WCF services are incompatible with the InlineScript="true" mode. You may get an InvalidCastException if you attempt to use this mode.
Set the InlineScript property for all WCF services in the Script Manager control to "false".
Modifications required to support 64bit applications that use WF or WCF
To support native 64bit applications that use WF or WCF, manual modifications to the configuration are required.
For selfhosted applications, the following modification to machine.config is required:
For applications hosted within IIS, there are two possible workarounds:
A. Configure IIS to run in WOW mode: cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
Windows XP, Windows 2003
Windows Vista
B. Update %windir%\Microsoft.NET\Framework64\v2.0.50727\CONFIG\web.config by adding the following:
Windows Communication Foundation (WCF) Samples setup script Setupvroot.bat will not work on Windows Vista if the NetMsmqActivator service is enabled and Message Queuing (MSMQ) is not installed
The iisreset utility does not work unless MSMQ is installed or the NetMsmqActivator service is disabled. The WCF Samples setup script Setupvroot.bat will not run unless MSMQ is installed or the NetMsmqActivator service is disabled.
Make sure that MSMQ is installed or disable the NetMsmqActivator service on Windows Vista before you run the WCF Samples setup script Setupvroot.bat.
Only the online version of the Windows Communication Foundation (WCF) and Workflow Foundation (WF) samples for .NET Framework 3.5 will compile and run
The offline WCF and WF samples that are included with Orcas Beta 1 do not compile or run.
Download the online versions of the Orcas Beta 1 samples for .NET Framework 3.5.
Service Model Metadata Utility Tool (SvcUtil.exe) Can Throw InvalidChannelBindingException when importing WSDL from certain endpoints
Although Windows Communication Foundation (WCF) allows the setting of the ReliableSession Binding Element InactivityTimeout or AcknowledgementInterval properties to TimeSpan.MaxValue, WCF will not consume WSDL generated by an endpoint with such settings. Instead, the import will fail and SvcUtil.exe will throw an InvalidChannelBindingException.
After you download the WSDL, manually change the TimeSpan.MaxValue to 2147483647 (Int32.MaxValue). Then, in the generated configuration file, change the inactivityTimeout or acknowledgementInterval attribute from "24.20:31:23.6470000" to "Infinite".