Хороший вопрос! Я предполагаю, что вы можете выбрать синтаксис C # по ходу работы, поэтому я сосредоточусь на общей картине.
Чтобы начать работу с приложением WebForms, вы должны понять жизненный цикл страницы и жизненный цикл приложения. Это ваш первый приоритет. Модель, используемая в ASP.NET, основана на программировании на основе форм Windows, и это влияет на то, как вы думаете обо всем процессе производства программного обеспечения. Теперь я предполагаю, что вы будете создавать приложение WebForms, потому что технология WebForms (в ASP.NET) более развита, имеет лучшую стороннюю поддержку и имеет гораздо больше документации. Если вы склонны к MVC, просто имейте в виду, что хорошим дизайном будет один или другой - MVC не является частью WebForms, это альтернатива ему.
Далее у вас есть некоторые решения. Будете ли вы использовать стандартные инструменты доступа к данным (например, SQLClient), использовать свой собственный уровень доступа к данным (или использовать DAL) или использовать linq to SQL? Я говорю «решения», потому что все в команде должны быть вместе в этом. Я искренне рекомендую создать DAL, так как вы можете оптимизировать его для своих нужд. Линк тоже хорош, но на горизонте есть зловещих облаков . Координируйте, решайте и оставайтесь с этим.
Хотя это и не обязательно, вам следует серьезно подумать о создании вашей бизнес-логики в отдельной библиотеке классов (DLL). Visual Studio / ASP.NET позволяет легко создать собственную библиотеку классов и встроить ее в свое решение. Узнайте, как это сделать, и вы станете лучшим разработчиком в течение многих лет. Люди обычно спорят об этом на том основании, что это защитит ваш интерфейс от доступа к данным. Хотя это и правда, на самом деле это не является преимуществом - преимущество приходит в будущее, когда вы готовы учиться и проводить модульное тестирование. Просто начните с предположения, что вы отделите пользовательский интерфейс от логики и поблагодарите меня в будущем.
На этом этапе вы можете (A) создавать веб-страницы и (B) отображать в них динамический контент на основе базы данных. Убедитесь, что вы освоили объекты GridView и ObjectDataSource, используемые для их заполнения. Примечание: ObjectDataSource - это то, что переносит данные из вашей библиотеки бизнес-классов в ваш пользовательский интерфейс. Если вы не используете бизнес-уровень, вы будете использовать объекты SQLDataSource или LinqDataSource для доступа к вашим данным непосредственно из пользовательского интерфейса.
Пока не выбирайте свою архитектуру!
Теперь вам нужно решить, хотите ли вы использовать компоненты Microsoft WebParts, Login и Navigation. Они привязывают вас к определенному подходу к навигации по сайту, пользовательскому интерфейсу и т. Д., Но при необходимости могут сэкономить массу времени.
Как только вы узнаете, будете ли вы ими пользоваться и у вас была возможность привыкнуть к ним, я бы порекомендовал ознакомиться с мастер-страницами. Я широко их использую, и они отлично подходят для стандартизации общего внешнего вида сайта.
Наконец, каждый профессиональный разработчик ASP.NET должен получить свой собственный класс страницы (например, «MyPageClass»), чтобы он мог инкапсулировать общие действия на уровне страницы. Например, я построил объект управления сеансом, чтобы я мог обращаться ко всем часто используемым переменным сеанса безопасным для типов образом. Производный класс страницы отвечает за предоставление экземпляра sessionObj, чтобы каждая страница могла получить к нему доступ без какой-либо дополнительной работы.
Теперь вы готовы начать создание веб-приложения корпоративного класса!