Articles of .net 4.5

Async / await vs BackgroundWorker

Nos últimos dias, testei os novos resources do .net 4.5 e c # 5. Eu gosto de seus novos resources async / await. Anteriormente, eu usava o BackgroundWorker para lidar com processos mais longos em segundo plano com a interface do usuário responsiva. Minha pergunta é: depois de ter esses novos resources legais, quando devo […]

asynchronous no aplicativo de console em c #?

Eu tenho esse código simples: public static async Task SumTwoOperationsAsync() { var firstTask = GetOperationOneAsync(); var secondTask = GetOperationTwoAsync(); return await firstTask + await secondTask; } private async Task GetOperationOneAsync() { await Task.Delay(500); // Just to simulate an operation taking time return 10; } private async Task GetOperationTwoAsync() { await Task.Delay(100); // Just to simulate […]

Como cancelar uma tarefa em espera?

Eu estou jogando com essas tarefas do Windows 8 WinRT e estou tentando cancelar uma tarefa usando o método abaixo, e funciona em algum ponto. O método CancelNotification é chamado, o que faz você pensar que a tarefa foi cancelada, mas no segundo plano a tarefa continua em execução e, depois de concluída, o status […]

Segmentação do .NET Framework 4.5 via Visual Studio 2010

Hoje eu instalei o .NET Framework 4.5 na minha máquina esperando poder usá-lo a partir do Visual Studio 2010, já que é apenas uma pequena atualização que não deve representar problemas para o Visual Studio 2010. Infelizmente não estou, mesmo removendo manualmente alguns 4.0 e adicionar os 4.5 conjuntos correspondentes resultou nos conjuntos 4.0 originais […]

C # HttpClient 4.5 multipart / upload de dados de formulário

Alguém sabe como usar o HttpClient no .net 4.5 com multipart/form-data upload? Não encontrei exemplos na internet.

Qual é a diferença entre Task.Start / Wait e Async / Await?

Eu posso estar faltando alguma coisa, mas qual é a diferença entre fazer: public void MyMethod() { Task t = Task.Factory.StartNew(DoSomethingThatTakesTime); t.Wait(); UpdateLabelToSayItsComplete(); } public async void MyMethod() { var result = Task.Factory.StartNew(DoSomethingThatTakesTime); await result; UpdateLabelToSayItsComplete(); } private void DoSomethingThatTakesTime() { Thread.Sleep(10000); }

O HttpClient e o HttpClientHandler precisam ser descartados?

System.Net.Http.HttpClient e System.Net.Http.HttpClientHandler no .NET Framework 4.5 implementar IDisposable (via System.Net.Http.HttpMessageInvoker ). A documentação da declaração using diz: Como regra, quando você usa um object IDisposable, você deve declarar e instanciá-lo em uma instrução using. Essa resposta usa esse padrão: var baseAddress = new Uri(“http://example.com”); var cookieContainer = new CookieContainer(); using (var handler = new […]

async / await – quando devolver uma tarefa vs void?

Sob quais cenários alguém gostaria de usar public async Task AsyncMethod(int num) ao invés de public async void AsyncMethod(int num) O único cenário em que consigo pensar é se você precisa que a tarefa possa rastrear seu progresso. Além disso, no método a seguir, as palavras-chave async e await são desnecessárias? public static async void […]

Qual é o objective de “retornar aguardar” em c #?

Existe algum cenário onde escrever método como este: public async Task DoSomethingAsync() { // Some synchronous code might or might not be here… // return await DoAnotherThingAsync(); } em vez disso: public Task DoSomethingAsync() { // Some synchronous code might or might not be here… // return DoAnotherThingAsync(); } faria sentido? Por que usar o […]

Metodologia de Programação WPF

Depois de 3 meses programando meu aplicativo no WPF, pensei em como estou programando meu aplicativo (sei que talvez seja tarde demais). No meu aplicativo estou usando uma API de um software que minha ferramenta está gerenciando. Eu tenho DAL que contém 16 classs, 3 delas são singletons. Eu tenho alguma lógica nos arquivos .cs […]