Image Image Image Image Image
Scroll to Top

Topo

.net

27

abr
2012

Sem Comentários

Em .NET
Blog
REST

Por Allison

Desenvolvimento de Web APIs evolui no ASP.NET MVC 4

Em 27, abr 2012 | Sem Comentários | Em .NET, Blog, REST | Por Allison

Fonte: Elemar Jr./InfoQ

A nova versão do framework para desenvolvimento de aplicativos Web da Microsoft, o ASP.NET MVC 4, amplia muito o suporte ao desenvolvimento de aplicações Web API. O framework, agora integralmente open source e disponível no Codeplex, possibilita o desenvolvimento de serviços RESTful com pouco esforço.

Entre as novidades na versão 4, destacam-se a facilidade para criar rotas para recursos (evitando colisão com rotas padrões MVC), a escrita de Actions para cada um dos métodos HTTP, o suporte nativo ao fornecimento de objetos em formato JSON e XML, além do suporte ampliado a URLs de consulta compatíveis com OData.

O ASP.NET MVC Web API permite um novo modelo de desenvolvimento web, em que o servidor provê apenas conteúdo e a geração da apresentação ocorre inteiramente no browser. Ou seja, no lugar de prover o HTML pronto, o servidor pode entregar um composto HTML + JavaScript, deixando que os dados sejam requisitados conforme demanda, via Ajax, para um serviço RESTful. (Importante destacar que o template padrão para aplicações ASP.NET MVC já possui referências para JQuery.) A possibilidade de gerar, automaticamente, respostas em formato JSON facilita consideravelmente a manipulação de código JavaScript.

As novas funcionalidades já são suportadas tanto no novo Visual Studio 11 (ainda beta e disponível para download na versão Ultimate), quanto no Visual Studio 2010 (mediante instalação).

Conforme noticiamos aqui, embora o ASP.NET MVC 4 não esteja completo, a Microsoft já recomenda sua utilização em produção. A Microsoft disponibilizou um mini-tutorial sobre o framework, com artigos e vídeos.

Tags | , , , , , , ,

10

abr
2012

Sem Comentários

Em Blog
C#
Código

Por Allison

Microsoft abre código de ASP.NET Web API e ASP.NET Web Pages

Em 10, abr 2012 | Sem Comentários | Em Blog, C#, Código | Por Allison

Fonte: IMasters

Com informações de The H

A Microsoft abriu o código da ASP.NET Web API e da ASP.NET Web Pages sob a licença Apache 2.0. A Web API e a Web Pages, também conhecida como Razor, encontraram um novo lar na plataforma de hospedagem CodePlex da Microsoft.

Agora, desenvolvedores que não são da Microsoft podem contribuir com pacotes e com código nos utilitários de desenvolvimento web – entretanto, isso ainda será avaliado pelos desenvolvedores da Microsoft.

De acordo com Scott Guthrie, vice-presidente da divisão de desenvolvimento da Microsoft, a empresa tomou um caminho semelhante com o Windows Azure SDK e afirma ter sido uma experiência positiva. A iniciativa não muda o status das três ferramentas como sendo totalmente suportadas pelos projetos da Microsoft.

A ASP.NET Web API é um framework para escrever aplicações RESTful usando a plataforma .NET, que teve sua origem na Windows Communication Foundation. A Razor/ASP.NET Web Pages é uma linguagem de template baseada em C# que pode ser usada para combinar código de servidor com HTML para criar páginas geradas dinamicamente.

Tags | , , , , ,

20

nov
2011

Sem Comentários

Em Blog

Por Allison

Incorporando funções nativas do Windows em seu projeto .NET

Em 20, nov 2011 | Sem Comentários | Em Blog | Por Allison

Hoje gostaria de mostrar como importar algumas funções nativas do Windows em seu aplicativo usando C#.NET e mostrar como utilizar using de maneira diferente.

Muitas pessoas precisam acessar funções nativas do sistema operacional Windows e para isso é necessário fazer algumas importações acima do método. Mas antes de começar a mostrar, é necessário usar algumas classes do Framework.NET.

using System;
using System.Globalization;
using System.Runtime.ConstrainedExecution;
using System.Runtime.InteropServices;
using System.Security.Principal;
using System.Text;

Junto desses “using” descritos acima, existe uma maneira nova de criar variável local que assume os dados da classe. Primeiro se coloca o nome igualando ao da classe que deseja usar:

using SysComTypes = System.Runtime.InteropServices.ComTypes;

Note que a classe de System.Runtime.InteropServices.ComTypes foi atribuída para a variável SysComTypes. Essa variável pode ser usada dentro da classe em qualquer lugar. É uma maneira interessante para uso de variáveis locais.

Passando agora para a parte de importação nativa do sistema operacional, você precisa colocar no mínimo três linhas de código para cada importação dependendo do método. Em exemplo, para verificar se o login do usuário precisa do código abaixo:

//
// advapi32.dll
//
[DllImport("advapi32", CharSet = CharSet.Unicode, SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern bool LogonUser(string lpszUsername, string lpszDomain, string lpszPassword, LogOnType dwLogonType, LogOnProvider dwLogonProvider, out IntPtr phToken);
[DllImport("advapi32", CharSet = CharSet.Unicode, SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern bool LogonUser(string lpszUsername, string lpszDomain, IntPtr lpszPassword, LogOnType dwLogonType, LogOnProvider dwLogonProvider, out IntPtr phToken);

A dll nativa é a advapi32 do Windows. Existem outras interfaces disponíveis dessa dll, porém não são muito utilizadas.

Para a dll kernel32 existem outros métodos específicos como pegar a informação do HD local, verificar o status da thread, encontrar arquivo, pegar a memória da máquina e muito mais. Veja alguns exemplos abaixo:

 
//
// kernel32.dll
//
[DllImport("kernel32", BestFitMapping = false, CharSet = CharSet.Unicode, SetLastError = true, ThrowOnUnmappableChar = true)]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern bool GetVolumeInformation(string lpRootPathName, StringBuilder lpVolumeNameBuffer, int nVolumeNameSize, out int lpVolumeSerialNumber, out int lpMaximumComponentLength, out int lpFileSystemFlags, StringBuilder lpFileSystemNameBuffer, int nFileSystemNameSize);
[DllImport("kernel32", SetLastError = true)]
internal static extern ExecutionState SetThreadExecutionState(ExecutionState esFlags);
[DllImport("kernel32", BestFitMapping = false, CharSet = CharSet.Auto, SetLastError = true, ThrowOnUnmappableChar = true)]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern bool FindNextFile(SafeFindFileHandle hndFindFile, [In, Out] FindData lpFindFileData);
[DllImport("kernel32", CharSet = CharSet.Auto, SetLastError = true)]
internal static extern void GlobalMemoryStatus(NativeMemoryStatus lpBuffer);
[DllImport("kernel32", CharSet = CharSet.Auto, SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern bool GlobalMemoryStatusEx(NativeMemoryStatusEx lpBuffer);

Bom, o objetivo foi mostrar apenas como colocar a chamada de funções ou métodos nativos do sistema operacional. Em um próximo artigo posso mostrar como usar esses métodos específicos.

Além dessas dlls, existem outras como oleaut32, setupapi, shell32, shlwapi e ole32.dll. Todas essas existem métodos próprios para uso na linguagem C#.NET ou qualquer outra do framework .NET.

Espero que tenha gostado e qualquer dúvida pode entrar em contato pelo site.

Fonte: Maurício Júnor/IMasters

Tags | , , ,

10

out
2011

Sem Comentários

Em Blog

Por Allison

MonoDevelop 2.8 para C# e .NET está disponível para desenvolvedores

Em 10, out 2011 | Sem Comentários | Em Blog | Por Allison

A equipe do MonoDevelop liberou a versão 2.8 de seu IDE (Integrated Development Environment) open source para programação em C# e em outras linguagens .NET. Além de trazer mudanças no editor do código-fonte e novas funções para gerenciamento de projeto, o MonoDevelop 2.8 vem principalmente com mudanças para desenvolvedores Mac.

No Mac OS X, o MonoDevelop adiciona suporte para Xcode 4 e integra o serviço de testes do iOS TestFlight. Os pacotes para o MonoTouch e SDK do iOS agora podem ser configurados individualmente. Também há novos modelos de projetos para as plataformas iPad e iPhone, junto com suporte para iOS 5 Storyboards com o objetivo de facilitar o controle de visualização para desenvolvedores de aplicativos.

Além disso, a nova versão vem com um novo editor para criar esquemas de cores para destaque de sintaxe, junto com um novo esquema de cores padrão. Para o gerenciamento de projeto, o IDE possui um novo diálogo Edit References e revisou as visualizações do Class e do Document Outline.

Mais informações sobre a atualização podem ser encontradas nas notas de lançamento. O MonoDevelop 2.8 está disponível para download a partir do site do projeto e do GitHub. O IDE foi feito para assegurar que um base de código unificada ao portar aplicativos .NET criados com Visual Studio para Linux e para Mac OS X.

Texto publicado originalmente no The H

Fonte: IMaster

Tags | , , , , , ,