Archive for March, 2009

Aumentar o nível de compressão dos ficheiros XAP

Wednesday, March 25th, 2009
Autor: ricardo.fiel


O José Fajardo, que tive o prazer de conhecer no Mix, deu-me uma dica para reduzir o tamanho dos ficheiros XAP. Como não são mais do que ficheiros ZIP, então podemos tirar partido dos vários níveis de compressão de ferramentas como o 7-Zip e aplicar um nível de compressão maior do que o VS/Blend.

Para tal, basta extraír o conteúdo do XAP(dependendo da ferramenta que usem, pode ser necessário ter de o renomear para ZIP antes da extração), e voltar a criar um ficheiro ZIP com a taxa de compressão máxima. Finalmente, é só renomear para .XAP outra vez.

Com os testes que fiz, consegui reduções na ordem dos 30%.

Para ficheiros pequenos, não significa muito, mas para ficheiros XAP granditos, começa a ser justificável, não?

Outra dica, para quem quiser abrir estes ficheiros no explorer, o Jeff Wilcox explica como.

Microsoft MIX 09

Tuesday, March 24th, 2009
Autor: ricardo.fiel


Acabou o MIX 09. :(

Foram 3 dias de lançamentos de novas tecnologias, sessões técnicas e muito networking, tudo sob a magia de Las Vegas. O número de designers (e devigners) estava muito a par com o de developers, o que mostra um avanço significativo da Microsoft nos produtos a eles dirigidos.

O grande destaque foi, na minha opinião, para o Silverlight 3 e o Expression Blend 3. As novidades são muitas (e muito boas!).

Os outros grandes destaques foram o lançamento da versão final do Internet Explorer 8 e o ASP.NET MVC 1.0.

A nível de sessões, vou apenas destacar uma: a keynote do 2º dia, com a Deborah Alder. Não porque as outras não fossem interessantes (no geral, achei que foram muito muito muito boas), mas porque adorei estar a ver uma apresentação sobre user experience ligada a uma àrea (industria farmacêutica) diferente do que estamos habituados neste mundo da web. Os meus parabéns à Deborah, pela apresentação, e ao Bill Buxton por a ter convidado.

Todas as sessões estão disponíveis no site do Mix 09, e, se quiserem um atalho, o Mike Swanson tem uma compilação de todos os slides e videos.

O Mix é um evento diferente, é ùnico. É um evento onde developers se misturam com designers. Onde utilizadores das tecnologias se misturam com as equipas que as desenvolvem.

Fica a vontade (impaciente!) de voltar para o ano.

xamlpt.com – Lançamento da comunidade

Thursday, March 19th, 2009
Autor: ricardo.fiel


Boas a todos,

Acaba de ser lançada, com o apoio da Fullsix, a comunidade xamlpt.com – Comunidade portuguesa de tecnologias de apresentação da Microsoft: Silverlight, WPF e Surface.

Tal como dito na homepage do xamlpt.com:

“Este é o site da comunidade de utilizadores que trabalham com as tecnologias de camada de apresentação da Microsoft. Nomeadamente utilizando XAML para as plataformas Silverlight, WPF e Surface. Pretende-se que o site permita a troca de experiências e partilha de conhecimento utilizando a língua Portuguesa.

Podes participar nos fóruns, ler e comentar os blogs, aderir a um dos grupos ou ver os ficheiros que temos para partilhar na galeria de media.Quanto mais participares na comunidade mais pontos recebes. Vê o ranking actual e as regras.

Segue-nos no Twitter  (http://twitter.com/xamlpt)  e sabe das novidades do MIX09 à medida que elas vão saindo! nós estamos lá Smile.

Com os votos de uma boa participação na comunidade,

Tiago Andrade e Silva

Esperemos que gostem da iniciativa.

Lançamento comunidade XAML PT

Wednesday, March 18th, 2009
Autor: Tiago Andrade e Silva


Ao mesmo tempo que decorre a Keynote do MIX09 é hoje lançada formalmente a comunidade XAML PT que conta com o apoio da Fullsix. Esta pretende ser a comunidade dos utilizadores de língua Portuguesa que utilizam a tecnologia de apresentação da Microsoft, nomeadamente Silverlight, WPF e Surface.

http://xamlpt.com/

Estamos no MIX09! Se quiserem estar a par das notícias bem de perto podem seguir o nosso Tweet em http://twitter.com/xamlpt.

Erro no Expression Blend: “failed to compare two elements in the array”

Friday, March 6th, 2009
Autor: ricardo.fiel


Nota: Como encontrei pela net algumas pessoas com o mesmo problema sem solução, vou fazer o post em inglês e português, na esperança que possa ajudar quem passar pelo mesmo.

[EN]

After some time working on a Silverlight project, switching between Visual Studio 2008 and Expression Blend 2 SP1, I decided that today was a great day to clean the house a bit – aka Refactoring. Cleaning done, project running without problems until I tried to open it in Blend and get the error “failed to compare two elements in the array”, which made it impossible to open the solution in Blend, but had no problems in VS.

After trying some ideas I’d seen on the web (commenting the code in Page.xaml.cs), looking at the .sln and .csproj files hoping to find some wrong configuration, nothing. Everything remained the same. By unloading all the projects and reloading them one by one, I realized the problem was in a class library where I’d placed a web reference that was, before, in the web application. Hmmmmm… but I really want the web reference in the class library! Yep, but Blend doesn’t want it there! Both the class library and the web app were targeting version 2.0 of the .NET Framework (due to integration requirements with other application, which, in the meantime, was decided that were no longer necessary).

Hmmm… what if it is a service reference? So I converted the class library and the web app to .NET 3.5 and added a service reference to the web service I was calling. Let’s try opening this in Blend…. BINGO! Works! By the way, now that we’re in 3.5, I might as well do some more cleaning and refactor some XmlElement-related code to the wonderful LinqToXml.

Summarizing: It looks like Blend doesn’t like web references. Migrating to 3.5 and to a service reference solved the problem.

[PT]

Depois de algum tempo a trabalhar num projecto em Silverlight, alternando entre o Visual Studio 2008 e o Expression Blend 2 SP1, decidi que hoje era dia de arrumar um bocado a casa – aka Refactoring. Casa arrumada, projecto a correr sem problemas até que tento abri-lo no Blend e depáro-me com o erro “failed to compare two elements in the array”, o que tornava impossível abrir a solução no Blend, mas sem qualquer problema no VS.

Depois de experimentar algumas ideias que vi pela net (comentar o código do Page.xaml.cs), andar pelos ficheiros .sln e .csproj na esperança de encontrar alguma configuração errada, nada. Tudo na mesma. Fazendo unload de todos os projectos e adicionando um a um outra vez, identifiquei que o problema estava numa class library onde tinha colocado uma web reference que anteriormente estava na web application. Hmmm… mas eu quero a web reference na class library! Pois, mas o Blend não quer! Tanto a class library como a web app tinham como target a versão 2.0 da .NET Framework (devido a requisitos de integração com outra aplicação que, entretanto, se decidiu já não serem necessários).

Hmm…. então e se for uma service reference? Converti a class library e a web app para .NET 3.5 e adicionei então uma service reference para o web service em questão. Vamos lá então tentar abrir isto no Blend…. BINGO! Works! E agora que estamos em 3.5, aproveito para arrumar a casa mais um bocadinho e converter um código XmlElement-related para o maravilhoso LinqToXml.

Resumindo: Parece que o Blend não gosta de Web References. Passar para 3.5 e para uma Service Reference resolveu o problema.


Better Tag Cloud