Многоуровневое приложение ASP.NET MVC - PullRequest
4 голосов
/ 28 октября 2011

Я запускаю свое первое серьезное приложение ASP.NET MVC, и мне нужен кто-то, кто объяснит мне, как его правильно наложить. (все приложения, которые я создал до сих пор, где только тестируют приложения, и я не заботился о том, чтобы правильно их наложить)

Я потратил некоторое время на поиск в Интернете примера правильно наслоенного приложения MVC, но все темы были либо неполными, либо где просто тонна текста без реального примера.

Допустим, у меня есть сайт электронной коммерции (любой другой пример подойдет), может кто-нибудь напишет мне пример того, как бы вы структурировали это приложение (например, когда пользователь покупает продукт)

Как бы выглядели ваши интерфейсы и классы где бы вы их разместили , где бы вы размещали классы для извлечения данных из базы данных и так далее. Мне не нужна реализация этих классов, только их название позиции и функции или свойства, которые они содержат

Например

IProduct -> интерфейс во втором проекте (Project.Wh независимо -> someFolder)

Свойства: Имя, Цена ...

IProductRepsitory -> это позиция в проекте

Функции: BuyProduct (Продукт продукта)

Теперь, когда вы определили все детали, которые, по вашему мнению, понадобятся для понимания вашего примера, пожалуйста, запишите подробности потока программы из контроллера до генерации представления, какую функцию вы вызываете из контроллера, какая функция вызывает функцию, которую вы вызвали от контроллера и так далее, пока вы, наконец, не доберетесь до той части, где вы вернетесь к контроллеру и сгенерируете представление.

Я знаю, что это объяснение займет немного больше времени, но вам не нужно вдаваться в подробности, но достаточно, чтобы я мог понять, как правильно наложить приложение mvc

Заранее спасибо

1 Ответ

3 голосов
/ 29 октября 2011

Сначала я должен сказать, что не знаю, насколько вы опытны в программировании в целом, поэтому сложно ответить на все ваши вопросы.

Я бы сказал, что вам следует взглянуть на .net framework, без шуток, с точки зрения понимания разделения проблемы. Это одна из самых важных вещей и ответ на ваш вопрос "Как бы выгляделы ваши интерфейсы и классы, где бы вы их разместили".

Один образец.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;

namespace YourCompanyName
{
    // here goes only stuff that could use in 
    // EVERY kind of .NET Application... 
    // The classes that are placed here dont
    // know windows, the internet, phones or ...
}

namespace YourCompany.Web
{
    // here goes only stuff that could use in
    // any Asp.NET Application.. Mvc and Webforms
    // like request helpers... Only Asp.NET related
    // stuff
}

namespace YourCompany.Web.Mvc
{
    // here goes only stuff that could use in
    // Asp.NET Mvc Application.. like HtmlHelpers or 
    // EditorTemplates
}

namespace YourCompany.Web.Forms
{
    // here goes only stuff that could use in
    // Asp.NET WebForms Application.. like WebControls
}

// and so on

и так далее, если вы что-то делаете с Windows Forms?, YourCompany.Windows.Forms и вы расширить сборку System.Windows.Forms .. это правильный способ мышления.

В пункте Asp.NET есть ребята

Скотт Хансельман

Фил Хаак

Скотт Гатри

и многое другое, что я призываю вас прочитать их блоги и посмотреть их веб-трансляции.

Что касается Asp.NET MVC, вы ДОЛЖНЫ увидеть эти два видео Скотта Хансельмана. Вы можете многому научиться за короткое время, это весело и мотивирует.

ASP.NET MVC 2: основы, введение Скотт Хансельман

ASP.NET MVC 2: Советы черного пояса ниндзя от Скотта Хансельмана

И загрузите демонстрационное приложение, чтобы узнать asp.net mvc, посмотрите, как Вы могли бы структурировать свое приложение. =>

NerdDinner посмотреть вживую на NerdDinner.com

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...