Using dynamic types

Description

70-483 C# Flashcards on Using dynamic types, created by Thiago Russo on 01/05/2017.
Thiago Russo
Flashcards by Thiago Russo, updated more than 1 year ago
Thiago Russo
Created by Thiago Russo over 7 years ago
0
0

Resource summary

Question Answer
o q é e como funciona dynamic? Qdo é útil trabalhar com dynamic? O que o compilador faz com o obj dinamico que vc escreve? C# é uma linguagem tipada parcialmente estática. A palavra-chave dynamic, add no C# 4.0, é onde vc entra no mundo das linguagens fracamente tipadas. Trabalhar c/ sistema fracamente tipado é útil ao se comunicar c/ recursos externos (Ex: COM Interop, Iron-Python, conjuntos de resultados (JSON) , ou o documento HTML Object Model [DOM]) ou qdo trabalham com reflection dentro C#. Qdo o compilador C# encontra 'dynamic' ele pára c/ verificação estática de tipo (ex: verificar se existe um método em um tipo ou se tem certos argumentos). Em vez disso, o compilador salva o objetivo do código para que ele possa ser executado mais tarde em tempo de execução. É por isso q o uso de tipos dinâmicos n irão gerar quaisquer erros em tempo de compilação, embora certamente pode gerar erros de execução.
exemplo com Office automation API's
DynamicObject conceito DynamicObject é o + flexível. Qdo herdando de DynamicObject, vc pode substituir os membros q lhe permitem substituir operações como get and set de um membro, chamar um método, ou realizar conversões. Usando DynamicObject, vc pode criar objetos verdadeiramente dinâmicos e tem total controle sobre como eles operam em tempo de execução.
exemplo de DynamicObject
ExpandoObject conceito ExpandoObject é uma implementação selada q permite obter e definir propriedades em um tipo. Em ASP.NET MVC, por exemplo, há uma ViewBag q pode ser usado p/ passar dados do controller para a view. ViewBag é um ExpandoObject. Em vez de criar uma nova propriedade, tipagem estática para cada elemento de dados que vc deseja passar, vc pode usar o ViewBag,
exemplo de ExpandoObject public ActionResult Index() { ViewBag.MyDynamicValue = “This property is not statically typed”; return View(); }
Show full summary Hide full summary

Similar

Porova teórica C# mod l
Cursos Professor Jonatã
Linguagem C#
Alex Araujo Furado
Prova teorica C# mo ll
Cursos Professor Jonatã
Entity framework - code first
José Fernandes
Flashcard Módulo 1 - XAMARIN LATINO AMERICA
Marcone Barbosa
Entity framework
José Fernandes
C# and ASP.NET
Kalebi Fiorentini
Linguagens de programação
Rodrigo Barbosa7452
Conceitos do ASP.NET CORE (Incompleto)
José Fernandes Rezende Neto
Dates and times .NET
Felipe Couto Viola
Fluxo Game UC 8
Lucas Coluzzo