Beta 8.4 of C#/XAML for HTML5 released

JS-Support
Site Admin
Posts: 738
Joined: Tue Apr 08, 2014 3:42 pm

Beta 8.4 of C#/XAML for HTML5 released

Postby JS-Support » Fri Jul 08, 2016 10:14 am

Dear CSHTML5 users and forum members,

We are pleased to inform you that the Beta 8.4 of CSHTML5 is available for download!


You will find it in the "Attachments" section after this message.


New Features and bug fixes since Beta 8.3 include:

  • Runtime Visual Tree Inspector! (inspired by the amazing work the XAML Spy team) It lets you navigate the UI elements at runtime and even change their properties on the fly!
    .
    2016-07-visual-tree-inspector.png
    2016-07-visual-tree-inspector.png (67.08 KiB) Viewed 1868 times

Other new features and bug fixes include:
  • Fixed Chrome for Android compatibility
  • Fixed WCF Encoding issues (characters other than English were not encoded properly, and could cause WCF to not function properly)
  • Fixed Serialization encoding issues
  • Fixed Canvas.SetLeft and Canvas.SetTop for elements that have a ControlTemplate, such as buttons (this was a regression introduced in one of the previous Beta's)
  • Fixed StrokeThickness
  • Fixed DropShadowEffect on older IE browsers
  • Fixed setDashLine errors on older IE browsers
  • "HorizontalContentAlignment" and "VerticalContentAlignment" now default to Center like on other XAML platforms
  • Improved reliability of animations inside a ControlTemplate
  • Improved layout of controls inside a Grid that has Width and Height specified in pixels, and that has only one column and row



You may also be interested to read:
- What's new in the previous Beta 8.2
- What's new in the previous Beta 8.3


Notes about installation:
  • Before installing this update, it is recommended that you close all the open instances of Visual Studio.
  • If for some reason you need to revert to the previous Beta, simply uninstall this one (from the Control Panel) and reinstall the previous Beta.



We hope you will enjoy this build!

If you find any issues, please post them on the forums or send an email to support@cshtml5.com

Thank you.
Regards,
JS-Support
Attachments
CSharpXamlForHtml5_v1_0_public_beta8_4.zip
(21.81 MiB) Downloaded 83 times

xidea
Posts: 33
Joined: Thu Jun 30, 2016 7:04 pm

Re: New Beta 8.4 released! [Download]

Postby xidea » Sat Jul 09, 2016 11:36 am

OK, got three fixes in one release.

A good thing for WCF would be the implementation of System.ServiceModel.Channels.ChannelFactory.
As Visual Studio lacks in some code generation, we must fully bypass the Service Reference, but for doing that we need the ChannelFactory to set the connection using pure self written code. An implementation of Websockets binding would be appreciated too (it allows bidirectional communication for the service through callbacks).


Thanks

Flavio

JS-Support
Site Admin
Posts: 738
Joined: Tue Apr 08, 2014 3:42 pm

Re: New Beta 8.4 released! [Download]

Postby JS-Support » Sun Jul 10, 2016 1:33 am

Thanks a lot Flavio. Glad that 3 of your issues got fixed with this release.

As for the ability to programmatically use the ChannelFactory, we are indeed very interested in implementing this functionality. Due to the fact that WCF is a very large framework and we need help to prioritize the most needed features, would you mind please posting some code that shows the minimal features that you expect from the ChannelFactory support? (In other words, can you please post some of your code that uses the ChannelFactory and tell us what you absolutely need and what you could do without for the moment)

Thanks again.

Regards
JS-Support

xidea
Posts: 33
Joined: Thu Jun 30, 2016 7:04 pm

Re: New Beta 8.4 released! [Download]

Postby xidea » Sun Jul 10, 2016 4:43 am

Hi,

< my English is very poor, so I'll try to say something without misunderstandigs, sorry for some strange twirls in my sentences :) >

Normally we can instantiate a client for consuming a WCF service using a Service Reference added to the project. The Service Reference defines the ServiceyournamespaceClient object with the specific methods for calling the service methods.
Supposing that you does not want to set a Service Reference (there are many reasons for this, one for all the reuse of shared types: the code generator will always generate new classes in the proxy, ignoring the type reuse settings specified during the Service Reference setup, so we need to set the connection manually avoiding the proxy generetion).
With the auto-generated proxy, the consumer code is like this (from your tutorial):

Code: Select all

ServiceReference1.Service1Client _soapClient =
        new ServiceReference1.Service1Client(
            new System.ServiceModel.BasicHttpBinding(),
            new System.ServiceModel.EndpointAddress(
                new Uri("http://localhost:4598/Service1.svc")));


An example of a manually coded proxy is (from https://devdump.wordpress.com/2009/01/05/dont-use-add-service-reference/:

Code: Select all

public class TestServiceClient: ITestService
{

    private ITestService service;
   
    public TestServiceClient(Uri uri)
    {
        // Any channel setup code goes here
        EndpointAddress address = new EndpointAddress(uri);
        NetTcpBinding binding = new NetTcpBinding(SecurityMode.Transport);
        binding.TransferMode = TransferMode.Streamed;
        binding.MaxBufferSize = 65536;
        binding.MaxReceivedMessageSize = 104857600;

        [b]ChannelFactory[/b]<ITestService> factory = new ChannelFactory<ITestService>(binding, address);
        service = factory.CreateChannel();
    }

    #region ITestService Members

    public TestData GetData(TestData data)
    {
        return service.GetData(data);
    }

    #endregion
}


Basically, this way we can avoid to set up a Service Reference, and using a shared type library, server side and client side referred.
(Now I'm using a workaround: as the generated types are fortunately coded in partial classes, I've add a module with partial class implementation that integrates the generated one with the implicit conversion operator, so I can easily convert the proxy types in local shared types using the (type) operator, like (MySharedType)ProxyType. I don't know if the forced class generation in the proxy is in my case due to sharing a C#XAML4HTML5 types library, but it seems this issue is a little bit popular.

However there are for sure other reasons for avoiding Service Reference stuff and manually set up a proxy.

Thanks for interesting

Flavio

JS-Support
Site Admin
Posts: 738
Joined: Tue Apr 08, 2014 3:42 pm

Re: New Beta 8.4 released! [Download]

Postby JS-Support » Tue Jul 12, 2016 7:53 am

Thank you Flavio for the detailed message. We are going to look into this.


Return to “Pre-Releases, Downloads and Announcements”

Who is online

Users browsing this forum: No registered users and 1 guest

 

 

cron