Primeiros passos no Asp.Net MVC    

Olá pessoal, depois de uma pequena série preparando o terreno para começar a falar de Asp.Net MVC, finalmente chegou o momento de falar dessa forma de desenvolver Web.

Vou tentar fazer vários pequenos posts sobre este assunto, e hoje será um bem introdutório, tentando falar um pouco da estrutura do MVC, para que quem nunca criou um novo projeto desse tipo possa ir se habituando. Falarei a principio falarei de Asp.Net MVC 2, porém, conforme for se tornando conveniente, falarei das novas funcionalidades do Asp.Net MVC 3, que já está com a segunda Release Candidate publicada.

Então vamos lá!

Criando um Projeto MVC

Da mesma forma que você cria um projeto WebForm, para criar um MVC você deve ir até o Visual Studio, e seguir os procedimentos padrões, apenas escolhendo o tipo certo de site (Clique nas imagens para ampliar):

image

Quando criamos um projeto Asp.Net MVC, percebemos que uma estrutura bem maior do que a de um WebForm é criada, com diversas pastas e subpastas, como mostrado na imagem abaixo:

image

Vamos explicar um pouco sobre isso. Toda aplicação Web tende a ficar extensa, com inúmeros arquivos. No caso do WebForm, você pode organizar isso da forma que achar melhor, criando vários níveis de pastas e sub-pastas. No MVC, isso é um pouco diferente. Com MVC a Microsoft decidiu trabalhar seguindo convenções, e isso é levado a sério ao desenvolver sites MVC. No caso das pastas, a MS convencionou que deveria existir uma pasta com cada tipo de arquivo, que são: Modelos, Visões e Controladores (Model, View, Controllers – MVC). Existem outras pastas, mas o conteúdo delas é também comum ao WebForms, como Scripts e Content.

Lembre-se: Convenção é um termo que você ouvirá muito no mundo MVC.

É possível mudar essa convenção? Sim, mas nem sempre é interessante, na realidade isso será tema de algum próximo post.

Mas de forma geral, os Controllers você pode colocar em qualquer lugar no projeto que ele será encontrado, os Models (os dados da aplicação) também podem está em qualquer lugar, principalmente em outro projeto, como é comum, apenas as Views que, normalmente, você não trocar de lugar, as view sempre estão na seguinte estrutura de pasta: View/{NomeDoController}/{AçãoDoControle}. O que fugir muito dessa estrutura não será encontrado pela engine de View do MVC. E ai está o ponto, se você realmente quiser mudar essa estrutura, você terá que customizar a ViewEngine do Asp.Net MVC (assunto para outro post).

Ainda existe outra pequena forma de mudar a estrutura de pastas, também tema para um post, que a nova funcionalidade, adicionada a partir do MVC 2, que são as Areas, que resumidamente é uma forma de você agrupar “por funcionalidade” a estrutura de pastas Controllers, Models e Views, ou seja, replicando para cada grupo de Controladores, toda a estrutura padrão de pastas.

Agora que vimos um pouco cada pasta da estrutura do MVC, vamos entender no que consiste cada item do padrão Model View Controller na implementação do Asp.Net MVC.

Controller

O Controller no Asp.Net MVC é representado por uma classe que herda da classe System.Web.Mvc.Controller, é o Controller que é a base do endereço que digitamos na URL, e ele que sabe como deve ser a View que deve ser retornada. Um Controller pode retornar várias Views, de acordo com a Ação (Action) definida.

Action são os métodos do Controller que executam alguma ação e retornam uma View específica, utilizando um Modelo (Model) ou não.

Por exemplo, quando criamos um novo projeto, o Visual Studio cria dois Controllers: Home e Account. O Controller Home tem duas Actions, como mostrado abaixo:

public class HomeController : Controller
    {
        public ActionResult Index()
        {
            ViewData["Message"] = "Welcome to ASP.NET MVC!";

            return View();
        }

        public ActionResult About()
        {
            return View();
        }
    }

Cada Action tem uma View relacionada na pasta View/Home, como pode ser visualizado no print abaixo:

image

Não precisa ser sempre assim. Lembre que uma View pode ser qualquer coisa que retorne para um usuário, portanto, pode ser texto simples, arquivo, JSON, comando para o browser redirecionar, enfim, qualquer coisa coisa que pode ser retornada para o Browser. Para deixar isso claro, vamos criar um novo Controller, da seguinte forma:

Clique na pasta Controller –> Add-> Controller e dê o nome de PrimeiroController, conforme prints abaixo:

image

image

Perceba que temos outra Convenção ao criar um controller: Todos devem ter o sufixo Controller, como os atributos devem ter o sufixo Attribute.

Quando criamos um Controller é criado uma Action padrão chamada Index, que é invocado toda vez que não definimos qual ação chamar, então vamos alterar a implementação padrão do método/action Index, para ficar como a seguinte:

public class PrimeiroController : Controller
    {
        //
        // GET: /Primeiro/

        public string Index()
        {
            return "Primeira página!";
        }

    }

Dando F5, vamos digitar /Primeiro após o nome do seu site no endereço e receberemos o retorno de nossa Action Index no Controller Primeiro da seguinte forma (Perceba que não precisamos digitar o sufixo Controller):

image

Neste casso, o controller está retornando todo o conteúdo HTML, que é a nossa View, vamos criar mais uma Action para ver que podemos chamar mais de uma Action dentro de um Controller e ter Views diferentes. Abaixo segue o código da Action, e o endereço http://localhost:50413/Primeiro/BemVindo digitado no endereço IE. Perceba que você pode colocar qualquer código HTML no retorno da View, e neste caso precisamos também colocar o nome da Action, porque agora não estamos chamando a Action padrão:

public string BemVindo()
{
	return "<h1>Minha Página!</h1><p>Olá, seja bem-vindo!</p>"

}

image

Mas calma! Você não precisa ficar digitando HTML em C# dessa forma, porque seria bem cansativo. Para isso você utiliza um ActionResult como retorno. Vamos mudar o tipo do retorno das nossas Actions de string  para ActionResult, e adicionar Views HTMLs para elas, dessa forma ficará mais fácil de controlarmos a geração do HTML. Podemos adicionar uma View clicando em cima do Método da Action e depois em Add View. Vamos fazer isso para os dois métodos. Aparecerá  a seguinte janela:

image

Essa é a janela que você define as informações da View. Vamos conhecê-la com o passar do tempo. Por hoje, precisamos ver apenas que estamos dando o nome da View, que é o mesmo nome da Action, e também estamos dizendo que ela utilizará uma MasterPage (Site.Master). Quanto a MasterPages, o conceito é o mesmo que no WebForm.

Depois de adicionarmos as duas Views, nosso diretório de View ficará assim:

image

Quando trabalhamos com Action do tipo ViewResult, podemos passar dados do controller para view de duas formas: Através do dicionário ViewData, que você pode pode definir qualquer informação, e lê-la a partir da View, ou através de Model, que é a representação dos dados, como você já sabe.

A princípio não existe nada de mais no HTML da View, porém, se você vem do WebForm, deve saber que NÃO EXISTEM NENHUM SERVER CONTROL no MVC. Portanto, você deverá conhecer HTML, se você veio de PHP ou Asp 3, verá que é bem parecido com o que você trabalhava, a principio pelo menos.

Vamos primeiro codificar o Index, tanto Action como View:

Action:

 public ActionResult Index()
        {
            ViewData["Texto"] = "Primeira Página";
            return View();
        }

View:

<asp:content id="Content2" runat="server" contentplaceholderid="MainContent">

    <h2><%=ViewData["Texto"] %></h2>

</asp:content>

Resultado:

image

Agora o comportamento com um Model, e vendo como ser acessado a partir da View, agora com a Action BemVindo. Nesse caso, estou utilizando como modelo um objeto dinâmico,, apenas como exemplo, mas poderia ser qualquer estrutura de dados:

Action:

public ActionResult BemVindo()
        {
            dynamic model = new ExpandoObject();
            model.Texto = "Seja bem-vindo!";
            return View(model);
        }

View:

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

    <h2><%=Model.Texto %></h2>

</asp:Content>

Resultado:

image

Perceba que agora  agente não utilizou o View data, mas um objeto chamado Model, que terá as propriedades do seu modelo de acordo com o definido na Action.

No nosso caso, o IntelliSense do Model não funcionou porque o nosso objeto era dinâmico e o tipo da View era dinâmico, como podemos ver na primeira linha da View:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

No próximo post, veremos como fazer Views fortemente tipadas e como isso pode nos ajudar no desenvolvimento.

Bom, acredito que para um primeiro post, apenas introdutório, o que foi passado já é suficiente para você ir fuçando e descobrindo mais coisas do Asp.Net MVC.

Qualquer dúvida estou a disposição.

Até o próximo!

16. November 2010 07:18 by Frederico B. Emídio | Comments (62) | Permalink

Comments

Parabéns pelo post, já programo em php e um pouco de asp.net com webform, realmente o conceito é parecido com o MVC do PHP, só não entendi muito bem quando você renderiza um view pelo controle, pois no php posso setar a view que quero renderizar caso o controller for executado pelo ajax por exemplo, mas valeu gostei do post.. parabéns denovo!
4/7/2011 3:09:29 AM #
I am guessing that the only thing that faded away in the late ninties was my interest in using free classified ads. An Elaboration of the Basics of Free Website Promotions - Part # 4. People are also bragging about the business' shipping system.

Feel free to surf to my webpage ::  cheap oakley sunglasses - http://www.oakleyplanets.com
11/13/2014 3:14:18 PM #
I am really inspired together with your writing talents as smartly as with the structure on your weblog. Is this a paid topic or did you customize it your self? Either way keep up the nice high quality writing, it is uncommon to see a great blog like this one today..

My web-site ...  cheap ray bans - http://www.raybanfromchina.com/
11/16/2014 8:37:28 PM #
Its like you read my thoughts! You appear to know so much approximately this, like you wrote the ebook in it or something. I feel that you just can do with a few % to drive the message home a little bit, but instead of that, that is excellent blog. A fantastic read. I will certainly be back.

Check out my website - Beats for sale ( www.hang30.com - http://www.hang30.com/ )
11/16/2014 9:04:10 PM #
Very nice write-up. I definitely love this site. Continue the good work!

My webpage ::  cialis soft pharmacy - http://canadianpharmacyshippingusa.com/
12/13/2014 11:40:19 PM #
I blog quite often and I really thank you for your information. The article has truly peaked my interest. I will take a note of your site and keep checking for new information about once per week. I opted in for your RSS feed too.

Also visit my web-site;  tadalafil - http://canadianpharmexpress.com/
12/21/2014 12:47:02 AM #
Genuinely when someone doesn't be aware of then its up to other viewers that they will help, so here it occurs.

Feel free to visit my page;  buy cialis in canada - http://www.myhugong.com/home/link.php?url=http://canadianpharmacyrxbest.com/
12/24/2014 6:01:52 AM #
Thanks in favor of sharing such a good thinking, post is good, thats why i have read it fully

Look at my blog:  generic cialis in canada - http://pharmacyusa24h.com/
12/25/2014 5:37:39 AM #
Amazing blog! Do you have any tips for aspiring writers? I'm planning to start my own website soon but I'm a little lost on everything. Would you recommend starting with a free platform like Wordpress or go for a paid option? There are so many options out there that I'm completely overwhelmed .. Any recommendations? Thank you!

My web blog ::  cialis coupons pharmacy - http://canadaedtreatment.com/
12/30/2014 5:19:46 PM #
My family every time say that I am killing my time here at web, except I know I am getting know-how daily by reading thes fastidious posts.

Also visit my blog post -  canadian pharmacy generic viagra - http://canadiansildenafilpill.com/
12/31/2014 2:57:26 AM #
I loved as much as you will receive carried out right here. The sketch is attractive, your authored subject matter stylish. nonetheless, you command get got an impatience over that you wish be delivering the following. unwell unquestionably come further formerly again since exactly the same nearly a lot often inside case you shield this increase.

my blog post ::  canadian drugs online - http://canadianedrugstore.com/
1/1/2015 11:07:10 PM #
Definitely believe that which you said. Your favorite reason seemed to be on the web the simplest thing to be aware of. I say to you, I certainly get irked while people think about worries that they just don't know about. You managed to hit the nail upon the top and defined out the whole thing without having side-effects , people can take a signal. Will probably be back to get more. Thanks

Also visit my site ::  pharmacy online cialis - http://canadianpharmacysaverx.com/
1/9/2015 9:03:36 AM #
Hey I know this is off topic but I was wondering if you knew of any widgets I could add to my blog that automatically tweet my newest twitter updates. I've been looking for a plug-in like this for quite some time and was hoping maybe you would have some experience with something like this. Please let me know if you run into anything. I truly enjoy reading your blog and I look forward to your new updates.

My web blog:  SimCity BuildIt Trainer - https://Www.Facebook.com/SimCityBuildItHacksCheats
1/10/2015 1:37:53 PM #
Hope for a short plus steep drop, but get ready for a long a single. Hooker Furniture can be your one-stop shop when it comes to your furniture requirements. What exactly does it decide to try be able to create such a relationship?

Stop by my page:  click here - http://www.goodwebdiscount.com/survive-her-affair
1/11/2015 3:48:37 PM #
Everything composed was actually very logical. But, think about this, suppose you added a little information? I ain't suggesting your information isn't solid, but suppose you added a title to maybe grab people's attention? I mean Sobre .Net... | Primeiros passos no Asp.Net MVC is a little boring. You might peek at Yahoo's front page and note how they create post titles to grab people interested. You might try adding a video or a pic or two to get readers interested about what you've got to say. Just my opinion, it might make your posts a little bit more interesting.

My page  cialis free trial - http://canadianpharmaexpress.com/
1/11/2015 5:47:04 PM #
When someone writes an post he/she keeps the thought of a user in his/her mind that how a user can be aware of it. Thus that's why this post is outstdanding. Thanks!

Feel free to surf to my web site:  get paid for online surveys - http://www.getsurveysforcash.com
1/11/2015 6:39:58 PM #
You can teach the numeracy ideas by employing plastic counters, or household objects like kidney beans, etc.

Here is my web blog -  Using Songs and Props - https://www.youtube.com/watch?v=uiX2NNeroik
1/13/2015 2:26:54 AM #
I like the valuable info you supply in your articles. I'll bookmark your weblog and test once more right here frequently. I am fairly certain I'll be told many new stuff proper right here! Good luck for the next!

Here is my site ::  canadian pharmacy viagra - http://blackjackssaloon.com/
1/13/2015 4:55:43 AM #
Excellent items from you, man. I've keep in mind your stuff prior to and you're just extremely great. I actually like what you've bought here, really like what you are saying and the best way during which you say it. You're making it enjoyable and you continue to take care of to keep it smart. I can't wait to read far more from you. That is really a great website.

Here is my web blog:  Les Yeux jaunes des crocodiles en streaming - telecharger-le-film.com/.../
1/14/2015 12:10:49 PM #
you're in point of fact a good webmaster. The site loading speed is amazing. It kind of feels that you're doing any unique trick. Also, The contents are masterpiece. you have done a magnificent job on this matter!

Here is my blog post:  60 second Payouts - Foaie.com/.../...ond-payouts-review-and-bonus.html
1/17/2015 7:29:27 AM #
I am sure this post has touched all the internet visitors, its really really nice article on building up new webpage.

Also visit my web-site;  Cialis without prescription in canada - canadianedrugstore.com/.../
1/17/2015 12:54:58 PM #
Aw, this was an incredibly nice post. Spending some time and actual effort to generate a top notch article… but what can I say… I procrastinate a whole lot and don't seem to get nearly anything done.

Stop by my blog - Maple Grove MN bankruptcy attorney ( Iola - http://url.org/bookmarks/abaftunderworld90 )
1/18/2015 12:28:35 PM #
I got this site from my pal who informed me about this site and now this time I am visiting this web site and reading very informative articles or reviews at this place.
1/19/2015 4:07:32 AM #
That is very fascinating, You're an overly skilled blogger. I've joined your feed and look ahead to in quest of more of your great post. Also, I have shared your site in my social networks

Feel free to visit my weblog -  รับออกแบบตกแต่งภายใน - www.aispep.it/modules.php
1/19/2015 7:35:48 AM #
If you wish for to grow your familiarity simply keep visiting this website and be updated with the most recent information posted here.

Here is my site  hack candy crush soda saga app - http://jazzzonenetwork.net/userinfo.php?uid=665372
1/19/2015 10:55:34 AM #
I couldn't refrain from commenting. Well written!

Here is my web-site ::  foosball - www.hotbotdirectory.com/article.php?id=72321
1/19/2015 11:21:33 AM #
This is one good option for those who want to lose weight. I was amused at first with the way Tim Ferriss placed methods on how to have a healthy weight loss. Minerals Vitamins Overdose Could Cause Serious Disorders and Death.
1/19/2015 4:37:30 PM #
So give them raw fresh veggies with dip made of yogurt or low fat cream. You could have a better chance of accomplishing your objectives in case you make sure that the burden loss plans that you'll use are smart and cheap right on the beginning. Many weight loss methods are available on the market but experts recommend that you avoid quick-fix solutions.
1/19/2015 5:16:37 PM #
Wilkinson has been devastated since reports surfaced in June 2014 that her husband, former NFL star Hank Baskett, had cheated on her with transsexual model Ava Sabrina London just one month after Kendra gave birth to their second child. Triphala Choorna benefits us through its detoxifying powers. As truthful information about the causes of obesity proliferate on the Internet, it's only a matter of time before millions of people will be able to 1) achieve permanent weight loss and 2) prevent obesity-related diseases.
1/19/2015 8:52:57 PM #
Hey There. I found your blog using msn. This is a really well written article. I will be sure to bookmark it and come back to read more of your useful info. Thanks for the post. I will definitely comeback.

Here is my web page ...  game room - thekrackers.com/.../
1/20/2015 6:50:55 AM #
Wilkinson has been devastated since reports surfaced in June 2014 that her husband, former NFL star Hank Baskett, had cheated on her with transsexual model Ava Sabrina London just one month after Kendra gave birth to their second child. An effective weight loss pill can help you to break bad habits, jump start your metabolism and help you achieve the weight loss you want. As truthful information about the causes of obesity proliferate on the Internet, it's only a matter of time before millions of people will be able to 1) achieve permanent weight loss and 2) prevent obesity-related diseases.
1/20/2015 4:14:20 PM #
I have read so many content concerning the blogger lovers but this paragraph is truly a nice post, keep it up.

My page:  bankruptcy questions - http://ge.tt/1TMBll62/v/0
1/20/2015 11:49:46 PM #
You can certainly see your skills within the article you write. The arena hopes for more passionate writers like you who aren't afraid to say how they believe. At all times follow your heart.

Here is my website ::  what are symptoms of low thyroid function - decorousbeach8881.sosblogs.com/.../...m-b1-p38.htm
1/21/2015 1:27:04 AM #
Aw, this was a very good post. Finding the time and actual effort to generate a top notch article… but what can I say… I hesitate a whole lot and never manage to get nearly anything done.|

Also visit my site  program pit 2015 - http://pity.ovh
1/21/2015 4:18:49 AM #
Hi it's me, I am also visiting this site on a regular basis, this web site is really pleasant and the users are in fact sharing good thoughts.
1/21/2015 4:21:38 PM #
Howdy! Do you use Twitter? I'd like to follow you if that would be ok. I'm absolutely enjoying your blog and look forward to new updates.
1/21/2015 9:32:18 PM #
Great site you have got here.. It's hard to find high-quality writing like yours these days. I seriously appreciate individuals like you! Take care!!

Here is my website:  Elite Trader App - www.petisud.com/2015/01/elite-trader-app.html
1/23/2015 2:06:20 AM #
So give them raw fresh veggies with dip made of yogurt or low fat cream. Gastric bypass surgery leads to diabetes resolution very quickly in many patients even before significant weight loss has been realized. Many weight loss methods are available on the market but experts recommend that you avoid quick-fix solutions.
1/23/2015 7:02:06 PM #
Hi, Neat post. There's a problem with your website in internet explorer, could test this? IE nonetheless is the market chief and a good element of people will omit your fantastic writing due to this problem.

My site :: clash of clans cheats -  Orville - www.facebook.com/.../756718704404451 ,
1/24/2015 3:28:40 AM #
I actually look around me at the bushes and the cars streaming our on our busy road. That was one of the hypest experiences I ever had before I did this. Cortisol and noradrenaline initiate the stress response, known as &ldquo; the combat or airline flight response&rdquo;.

Feel free to visit my blog:  http://vipmagic.org/node/975080 - http://vipmagic.org/node/975080
1/24/2015 5:35:53 AM #
Hi there! This is my first comment here so I just wanted to give a quick shout out and say I genuinely enjoy reading through your posts. Can you recommend any other blogs/websites/forums that go over the same subjects? Thanks a ton!

For the best response please check-out this site;  apple cider Vinegar Weight loss - health-fitness-gear.com/blogs/viewstory/263429
1/25/2015 6:19:27 AM #
After going over a number of the blog articles on your web page, I truly like your technique of blogging. I added it to my bookmark webpage list and will be checking back in the near future. Please check out my website as well and let me know what you think.

Here is my blog post;  New Year Millionaire - www.petisud.com/2015/01/new-year-millionaire.html
1/25/2015 7:57:12 AM #
It's really very difficult in this active life to listen news on TV, therefore I simply use world wide web for that purpose, and get the latest news.

Also visit my webpage  clash of clans cheats - www.facebook.com/.../706866962765710
1/25/2015 10:05:13 AM #
IGF1 Serious Factor Deer. 2004 & Barling.

Check out my page ... deer antler spray reviews youtube ( Emilie - www.theglobalstrike.org/.../ )
1/25/2015 4:17:24 PM #
Woah! I'm really digging the template/theme of this site. It's simple, yet effective. A lot of times it's hard to get that "perfect balance" between superb usability and visual appeal. I must say that you've done a excellent job with this. Additionally, the blog loads extremely fast for me on Safari. Outstanding Blog!

My website :: The Traders Oracle ( Mathias - www.petisud.com/2015/01/the-traders-oracle.html )
1/25/2015 4:40:08 PM #
This is a great tip especially to those fresh to the blogosphere. Brief but very accurate information… Many thanks for sharing this one. A must read article!

Also visit my web page -  avoir skin - www.die-grenze.com/.../jump.php?url=http://www.kiwibox.com/.../
1/26/2015 5:24:36 AM #
You've made some decent points there. I looked on the internet for more information about the issue and found most people will go along with your views on this web site.

My site -  sara schwartz gluck - http://saraschwartzgluck.wordpress.com
1/26/2015 7:48:56 AM #
If you wish for to grow your knowledge simply keep visiting this web site and be updated with the latest information posted here.
1/26/2015 8:29:23 AM #
It's nearly impossible to find well-informed people on this topic, but you sound like you know what you're talking about! Thanks
1/26/2015 10:11:21 AM #
I have learn some good stuff here. Certainly price bookmarking for revisiting. I wonder how a lot attempt you set to create such a wonderful informative site.
1/26/2015 10:42:25 AM #
Howdy would you mind letting me know which hosting company you're utilizing? I've loaded your blog in 3 different browsers and I must say this blog loads a lot faster then most. Can you suggest a good web hosting provider at a fair price? Thanks, I appreciate it!
1/26/2015 12:12:43 PM #
Very descriptive blog, I liked that bit. Will there be a part 2?

Also visit my homepage ...  online pharmacies canada - http://noprescriptionmedicines.org/
1/26/2015 12:28:07 PM #
Hey there! I know this is kinda off topic but I was wondering if you knew where I could locate a captcha plugin for my comment form? I'm using the same blog platform as yours and I'm having problems finding one? Thanks a lot!
1/26/2015 2:14:01 PM #
Wow, this paragraph is fastidious, my younger sister is analyzing these things, so I am going to convey her.
1/26/2015 2:26:58 PM #
If some one wishes to be updated with most up-to-date technologies therefore he must be pay a quick visit this website and be up to date daily.

Feel free to visit my blog post ...  Hostgator 1 cent coupon - www.slideshare.net/.../hostgator-1-cent-coupon-how-to-save-money-with-a-hostgator-coupon-code
1/26/2015 2:56:32 PM #
Excellent goods from you, man. I've understand your stuff previous to and you're just extremely excellent. I actually like what you have acquired here, certainly like what you're stating and the way in which you say it. You make it entertaining and you still care for to keep it sensible. I can't wait to read much more from you. This is really a wonderful site.

my site;  เสื้อผ้าแบบไหนที่กำลังเป็นที่นิยม - http://fashion.999article.com/?p=10
1/26/2015 6:21:39 PM #
The decomposing matter from these sources, break down naturally and will provide nutrients and minerals to the soil. 4 million to be designated to Kansas farmers alone. Organic has less pesticide residues. When the war was over, the leftover organophosphates were adapted to become pesticides. There are grants that you can qualify for just because you are a member of a certain group.

Feel free to visit my web site ... organic farming ( finediningsolutions.com/.../index.php - finediningsolutions.com/.../index.php )
1/27/2015 12:05:46 AM #
I leave a response when I appreciate a post on a site or I have something to valuable to contribute to the discussion. Usually it is a result of the fire displayed in the article I looked at. And after this article Sobre .Net... | Primeiros passos no Asp.Net MVC. I was actually excited enough to drop a comment ;) I actually do have 2 questions for you if it's okay. Is it simply me or do some of these responses come across as if they are written by brain dead people? :-P And, if you are writing on other sites, I'd like to keep up with you. Would you list every one of all your communal pages like your twitter feed, Facebook page or linkedin profile?

Here is my weblog;  free landing page design - http://Ozrestaurant.co.uk/defter/index.php
1/27/2015 10:29:30 AM #
Simply by combining the very best techniques from several techniques it is thought that a superior system is obtained. Yet I had simply no sense of this time due to the fact I was sitting next to Red-colored talking. The next day we head northwest to some little town near the Bay of Fundy.

Also visit my webpage ...  forever yours - http://www.siteurle.com/forever-yours
1/28/2015 7:35:23 PM #
Greate article. Keep posting such kind of info on your blog. Im really impressed by your blog.
Hey there,  You have done a great job. I'll definitely digg it and for my part recommend to my friends. I'm confident they will be benefited from this website.
1/29/2015 6:18:11 AM #
Have you ever considered about including a little bit more than just your articles? I mean, what you say is valuable and all. But just imagine if you added some great graphics or videos to give your posts more, "pop"! Your content is excellent but with images and clips, this website could definitely be one of the best in its field. Superb blog!
1/29/2015 8:50:34 PM #
The hydrolysis of hippurate liberates two major end products, glycine and benzoic acid. The light model numbers can be the same shape as two intersecting cones, since lustrous power declines off from exponentially moving towards the centre together with the light. Their tactics were to operate primarily on the surface using their regular engines, then submerging to attack, using battery power.

Also visit my blog post:  fused quartz - mediationfairandsquare.com/.../Default.aspx
1/30/2015 2:43:37 AM #

Add comment




biuquote
  • Comment
  • Preview
Loading



Sobre mim

Minha Imagem

Meu nome é Frederico Batista Emídio, trabalho com desenvolvimento de sistemas profissionalmente a oito anos, porém, já faço sites pessoais a pelo menos dez anos.

Para saber mais clique aqui.

Páginas

Calendário

<<  January 2015  >>
MoTuWeThFrSaSu
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

Visualizar posts em um Calendário
Sigua @fredemidio

MCP Asp.NET