{"id":18,"date":"2013-06-13T18:45:17","date_gmt":"2013-06-13T21:45:17","guid":{"rendered":"http:\/\/www.hectordufau.com.br\/wp\/?p=18"},"modified":"2014-01-05T05:45:08","modified_gmt":"2014-01-05T08:45:08","slug":"proposta-de-arquitetura-parte-2-camadas","status":"publish","type":"post","link":"https:\/\/www.hectordufau.com.br\/wp\/?p=18","title":{"rendered":"Proposta de Arquitetura &#8211; Parte 2 &#8211; Camadas"},"content":{"rendered":"<p>No artigo anterior, apresentei o diagrama da estrutura de camadas que ser\u00e3o utilizadas no projeto do sistema de Cadastro. Agora passaremos \u00e0 cria\u00e7\u00e3o desta estrutura no Visual Studio 2010, o que nos ajudar\u00e1 a compreender na pr\u00e1tica como o sistema ser\u00e1 constru\u00eddo.<\/p>\n<p>Inicialmente, no Visual Studio, vamos criar um novo Projeto, do tipo Class Library, e como ser\u00e1 o primeiro projeto da estrutura, ser\u00e1 a oportunidade de nomearmos a Solution a que este projeto pertencer\u00e1.<\/p>\n<p><!--more--><\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"7\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=7\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject1.JPG?fit=955%2C563&amp;ssl=1\" data-orig-size=\"955,563\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject1\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject1.JPG?fit=810%2C478&amp;ssl=1\" class=\" size-full wp-image-7\" style=\"display: block; border: 0px; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject1.JPG?resize=810%2C478\" width=\"810\" height=\"478\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject1.JPG?w=955&amp;ssl=1 955w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject1.JPG?resize=300%2C176&amp;ssl=1 300w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Observe os campos <em>Name<\/em> e <em>Solution Name<\/em>. No campo <em>Name<\/em>, estamos preenchendo o nome do projeto, que neste caso \u00e9 do tipo <span style=\"text-decoration: underline;\">Class Library<\/span>, e em <em>Solution Name<\/em>, estamos informando o nome da solu\u00e7\u00e3o, ou podemos dizer, o nome do software que estamos constru\u00edndo.<\/p>\n<p>Se o projeto for versionado em um reposit\u00f3rio, ou seja, durante todo o trabalho de desenvolvimento, haver\u00e1 um controle de vers\u00f5es, e este controle for realizado por uma ferramenta de versionamento, ent\u00e3o o Visual Studio normalmente apresenta esta op\u00e7\u00e3o para habilitar. Na tela vemos marcado o checkbox <em>Add to Subversion<\/em>. Subversion \u00e9 a ferramenta que utilizo para versionamento de c\u00f3digo, entretanto n\u00e3o apresentarei os detalhes sobre esta ferramenta aqui. Entretanto, se essa op\u00e7\u00e3o n\u00e3o aparecer no seu Visual Studio, n\u00e3o se preocupe, pois isto n\u00e3o atrapalhar\u00e1 no decorrer deste projeto.<\/p>\n<p>Para facilitar a nossa apresenta\u00e7\u00e3o, deixaremos para o final a cria\u00e7\u00e3o das camadas visuais do sistema, e come\u00e7aremos pelas camadas que realizam o processamento de dados e comunica\u00e7\u00e3o com o banco de dados. Todas as camadas ser\u00e3o todas do tipo Class Library, que nada mais \u00e9 do que um reposit\u00f3rio de classes e m\u00e9todos que n\u00e3o possuem uma apresenta\u00e7\u00e3o visual para o usu\u00e1rio, mas s\u00e3o important\u00edssimas para organizarmos o c\u00f3digo de acordo com suas responsabilidades, facilitando a manuten\u00e7\u00e3o do c\u00f3digo, al\u00e9m de serem respons\u00e1veis pelo tratamento de informa\u00e7\u00f5es, como explicado anteriormente.<\/p>\n<p>Depois de criada a camada CLN, o nosso projeto aparecer\u00e1 na Solution Explorer desta maneira:<\/p>\n<p>&nbsp;<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"8\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=8\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject2.JPG?fit=261%2C299&amp;ssl=1\" data-orig-size=\"261,299\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject2\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject2.JPG?fit=261%2C299&amp;ssl=1\" class=\" size-full wp-image-8\" style=\"display: block; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject2.JPG?resize=261%2C299\" width=\"261\" height=\"299\" border=\"0\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Observe que no topo da lista est\u00e1 a nossa Solution (HLMI.Cadastro) e abaixo dela est\u00e1 o primeiro projeto Class Library (HLMI.Cadastro.CLN).<\/p>\n<p>Depois disso, basta clicar com o bot\u00e3o direito no nome da Solution para criar os outros projetos (CAD, CES e CUB). Todos devem ser Class Library, conforme indicado na imagem a seguir:<\/p>\n<p>&nbsp;<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"9\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=9\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject3.JPG?fit=955%2C563&amp;ssl=1\" data-orig-size=\"955,563\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject3\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject3.JPG?fit=810%2C478&amp;ssl=1\" class=\" size-full wp-image-9\" style=\"display: block; border: 0px; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject3.JPG?resize=810%2C478\" width=\"810\" height=\"478\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject3.JPG?w=955&amp;ssl=1 955w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject3.JPG?resize=300%2C176&amp;ssl=1 300w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>E assim observaremos na Solution a listagem dos projetos recem criados:<\/p>\n<p>&nbsp;<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"10\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=10\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject4.JPG?fit=265%2C301&amp;ssl=1\" data-orig-size=\"265,301\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject4\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject4.JPG?fit=265%2C301&amp;ssl=1\" class=\" size-full wp-image-10\" style=\"display: block; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject4.JPG?resize=265%2C301\" width=\"265\" height=\"301\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject4.JPG?w=265&amp;ssl=1 265w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject4.JPG?resize=264%2C300&amp;ssl=1 264w\" sizes=\"auto, (max-width: 265px) 100vw, 265px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>O pr\u00f3ximo passo \u00e9 indicar em alguns projetos quais s\u00e3o as suas refer\u00eancias. Come\u00e7aremos pela camada CLN, que possuir\u00e1 como refer\u00eancia as camadas CAD, CES e CUB.<\/p>\n<p>&nbsp;<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"11\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=11\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject5.JPG?fit=467%2C383&amp;ssl=1\" data-orig-size=\"467,383\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject5\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject5.JPG?fit=467%2C383&amp;ssl=1\" class=\" size-full wp-image-11\" style=\"display: block; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject5.JPG?resize=467%2C383\" width=\"467\" height=\"383\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject5.JPG?w=467&amp;ssl=1 467w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject5.JPG?resize=300%2C246&amp;ssl=1 300w\" sizes=\"auto, (max-width: 467px) 100vw, 467px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"12\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=12\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject6.JPG?fit=265%2C304&amp;ssl=1\" data-orig-size=\"265,304\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject6\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject6.JPG?fit=265%2C304&amp;ssl=1\" class=\" size-full wp-image-12\" style=\"display: block; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject6.JPG?resize=265%2C304\" width=\"265\" height=\"304\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject6.JPG?w=265&amp;ssl=1 265w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject6.JPG?resize=261%2C300&amp;ssl=1 261w\" sizes=\"auto, (max-width: 265px) 100vw, 265px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Fa\u00e7a o mesmo na camada CAD, que receber\u00e1 apenas como refer\u00eancia os projetos CES e CUB. N\u00e3o deve ser adicionado o projeto CLN porque o Visual Studio acusar\u00e1 erro de refer\u00eancia c\u00edclica.<\/p>\n<p>Bem, agora vamos adicionar as camadas de apresenta\u00e7\u00e3o e interface (CIA) ao projeto. Na cria\u00e7\u00e3o de um software para ambientes Microsoft, normalmente s\u00e3o construidos tr\u00eas tipos de aplica\u00e7\u00e3o:<\/p>\n<p>&nbsp;<\/p>\n<ol>\n<li><span style=\"line-height: 1.3em;\">Windows Forms<\/span><\/li>\n<li><span style=\"line-height: 1.3em;\">Windows Presentation Foundation<\/span><\/li>\n<li><span style=\"line-height: 1.3em;\">Web Application<\/span><\/li>\n<\/ol>\n<p><span style=\"line-height: 1.3em;\">\u00a0<\/span><\/p>\n<p><span style=\"line-height: 1.3em;\">Os dois primeiros tipos s\u00e3o aplica\u00e7\u00f5es que executam em desktop (WPF tem outras varia\u00e7\u00f5es, mas n\u00e3o \u00e9 o caso agora), e a Web Application fica hospedada em um servidor web, e \u00e9 acess\u00edvel atrav\u00e9s de um navegador.<\/span><\/p>\n<p><span style=\"line-height: 1.3em;\">Para cada uma das camadas de apresenta\u00e7\u00e3o, indicaremos conforme mencionado no diagrama do primeiro artigo: CIA.Win, CIA.WPF e CIA.Web:<\/span><\/p>\n<p><span style=\"line-height: 1.3em;\">O projeto CIA.Win \u00e9 do tipo Windows Forms Application:<\/span><\/p>\n<p><span style=\"line-height: 1.3em;\">\u00a0<\/span><\/p>\n<p><span style=\"line-height: 1.3em;\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"13\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=13\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject7.JPG?fit=955%2C563&amp;ssl=1\" data-orig-size=\"955,563\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject7\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject7.JPG?fit=810%2C478&amp;ssl=1\" class=\" size-full wp-image-13\" style=\"display: block; border: 0px; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject7.JPG?resize=810%2C478\" width=\"810\" height=\"478\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject7.JPG?w=955&amp;ssl=1 955w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject7.JPG?resize=300%2C176&amp;ssl=1 300w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\" \/><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>O projeto CIA.WPF \u00e9 do tipo WPF Application (tamb\u00e9m pode ser WPF.Ribbon Application):<\/p>\n<p>&nbsp;<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"14\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=14\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject8.JPG?fit=955%2C563&amp;ssl=1\" data-orig-size=\"955,563\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject8\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject8.JPG?fit=810%2C478&amp;ssl=1\" class=\" size-full wp-image-14\" style=\"border: 0px; display: block; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject8.JPG?resize=810%2C478\" width=\"810\" height=\"478\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject8.JPG?w=955&amp;ssl=1 955w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject8.JPG?resize=300%2C176&amp;ssl=1 300w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>O projeto CIA.Web \u00e9 to tipo ASP.NET Web Application:<\/p>\n<p>&nbsp;<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"15\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=15\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject9.JPG?fit=955%2C563&amp;ssl=1\" data-orig-size=\"955,563\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject9\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject9.JPG?fit=810%2C478&amp;ssl=1\" class=\" size-full wp-image-15\" style=\"display: block; border: 0px; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject9.JPG?resize=810%2C478\" width=\"810\" height=\"478\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject9.JPG?w=955&amp;ssl=1 955w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject9.JPG?resize=300%2C176&amp;ssl=1 300w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Como \u00faltima tarefa, adicionaremos nos projetos CIA.Web, CIA.WPF e CIA.Win a refer\u00eancia aos projetos CES e CLN.<\/p>\n<p>&nbsp;<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"16\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=16\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject10.JPG?fit=467%2C383&amp;ssl=1\" data-orig-size=\"467,383\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject10\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject10.JPG?fit=467%2C383&amp;ssl=1\" class=\" size-full wp-image-16\" style=\"display: block; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject10.JPG?resize=467%2C383\" width=\"467\" height=\"383\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject10.JPG?w=467&amp;ssl=1 467w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject10.JPG?resize=300%2C246&amp;ssl=1 300w\" sizes=\"auto, (max-width: 467px) 100vw, 467px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"line-height: 1.3em;\">Com isto, conclu\u00edmos a cria\u00e7\u00e3o das camadas da aplica\u00e7\u00e3o no Visual Studio. Vejamos como ficou a listagem dos projetos na Solution Explorer:<\/span><\/p>\n<p><span style=\"line-height: 1.3em;\">\u00a0<\/span><\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"17\" data-permalink=\"https:\/\/www.hectordufau.com.br\/wp\/?attachment_id=17\" data-orig-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject11.JPG?fit=265%2C459&amp;ssl=1\" data-orig-size=\"265,459\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"vsproject11\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject11.JPG?fit=265%2C459&amp;ssl=1\" class=\" size-full wp-image-17\" style=\"display: block; margin-left: auto; margin-right: auto;\" alt=\"\" src=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject11.JPG?resize=265%2C459\" width=\"265\" height=\"459\" border=\"0\" srcset=\"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject11.JPG?w=265&amp;ssl=1 265w, https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject11.JPG?resize=173%2C300&amp;ssl=1 173w\" sizes=\"auto, (max-width: 265px) 100vw, 265px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"line-height: 1.3em;\">No pr\u00f3ximo artigo, criaremos o banco de dados no SQL Server e como criar as entidades usando Entity Framework na camada CES.<\/span><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>No artigo anterior, apresentei o diagrama da estrutura de camadas que ser\u00e3o utilizadas no projeto do sistema de Cadastro. Agora passaremos \u00e0 cria\u00e7\u00e3o desta estrutura no Visual Studio 2010, o que nos ajudar\u00e1 a compreender na pr\u00e1tica como o sistema [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":7,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[30],"tags":[],"class_list":["post-18","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-net"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.hectordufau.com.br\/wp\/wp-content\/uploads\/2013\/06\/vsproject1.JPG?fit=955%2C563&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4cTO8-i","jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=\/wp\/v2\/posts\/18","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=18"}],"version-history":[{"count":2,"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=\/wp\/v2\/posts\/18\/revisions"}],"predecessor-version":[{"id":111,"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=\/wp\/v2\/posts\/18\/revisions\/111"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=\/wp\/v2\/media\/7"}],"wp:attachment":[{"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=18"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=18"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hectordufau.com.br\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=18"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}